vladislav
Evgenii
Berkus
ну арм вполне себе risc-овый )
Berkus
вопрос в практичности и удельной мощности
Berkus
у risc-v тоже четыре базовых спецификации и десяток расширений )
Evgenii
Berkus
/ban
Berkus
вот вот, говорил же эйчар без фотографии - подозрительно! а это бот
vladislav
мб она страшненькая
Deleted Account
Ппц бармалей. Взял какуюто викторию зобанил
Купи
Я б замутил с ботом
Ioann_
Здесь есть и эйчары :?0_о
Купи
А как им ещё искать людей
Купи
Прогресс
Square
И там прикольно что аллокатор не один, есть вариант - diehard, который сглаживает шишки от наступания на грабли
Ioann_
Square
Ну конечно оно скажется на производительности, если мм следит за каждым пойнтером
Igor
пишу простенькую хреновину чтобы текст в консоль выводился с небольшими задержками, как на печатающей машинке
struct wait { ... };
class TypeWriter {
...
void Print(const char *str) const;
void Print(const std::string &str) const;
void Print(wait delay) const;
template <typename T>
void Print(T &&el) const {
Print(std::to_string(el));
}
public:
template <typename T>
TypeWriter& operator<<(T &&el) {
Print(el);
return *this;
}
};
...
std::string a{"tset"};
typewriter << "test" << wait{500ms} << 22 << a;
на выходе error C2665: 'std::to_string': none of the 9 overloads could convert all the argument types: ...
with [T=std::string &]
ЧЯДНТ? перегрузки функций не являются более приоритетными чем шаблонная, придётся делать их через template<> Type(const string&)?
Berkus
добавь to_string(std::string)
Berkus
тривиальную
Igor
namespace std { string to_string(string &other) { return other; } ?)
Berkus
типа того
Олександр
Для чего здесь переопределять rvalue reference?
Олександр
Еще и шаблоном
Олександр
Очень странный код, как по мне
Igor
Олександр
Олександр
Достаточно обычного reference
Berkus
а что с const объектами?
Олександр
Да, const reference
Олександр
ИМХО, еще лучше сделать эту перегрузку friend и определить вне класса
Igor
Достаточно обычного reference
universal reference же, T&& будет резолвиться в const string& если сделать << some_string_variable и в string&& если << "blah"s
или вопрос "а нахрена вообще это разграничивать если можно просто const T& "?
Олександр
Igor
типа того
скомпилилось, но это конешо лол
Berkus
ну нету конверсии строки в строку по дефолту
Berkus
в комитете чувакам некогда писать реальный софт
Олександр
Разве это не костыль?
Igor
Вопрос
"слышал звон" как говорится, что во всякой шаблонной мутотени лучше использовать T&& ибо будет разом учитывать и const type& и type&&
Олександр
Так тебе же не нужен type&&
Олександр
литералы отлично передаются по const type&
Олександр
В идеале красивее сделать перергузку оператора для строк и const char* без std::to_string
Олександр
А шаблон оставить для остального
Igor
перегрузку или специализацию шаблона?
Constantine
Igor
потому что перегрузка то уже есть, и он её благополучно игнорирует
Igor
Berkus
видимо локаль с ней
Олександр
Berkus
она тред сейф
Berkus
но будет медленнее, пушо локаль будет блочиться между тредами
Berkus
а в cppreference написано, что нет
нашел кому верить. прочитай лучше cppreference:
std::to_string relies on std::locale for formatting purposes, and therefore concurrent calls to std::to_string from multiple threads may result in partial serialization of calls.
Олександр
ок, не знал
Constantine
Олександр
Олександр
Олександр
ИМХО в данном случае специализация ни к чему
Ioann_
Хех, а когда я свой код скидывал - такого кипиша не было :)
Ioann_
https://pastebin.com/C3TchdLa
Но если кто не видел - вот. Правда все компилится и работает :) Но это ведь не означает, что все хорошо ...?
Pepe 🐸
Кто нибудь юзал Halide? Как перфоманс по сравнению с С?
Pepe 🐸
Pepe 🐸
Из статьи. Халид это язык с llvm компилятором
KosBeg
#НАРУШАЮТ
Олександр
В этих статьях очень часто завышают показатели, дабы выглядело круче
Олександр
Но если это так, то интересно
Pepe 🐸
Вот думаю насколько он развит, в том числе tooling и вот это все
Олександр
Олександр
В llvm все языки в промежуточный конвертируются, а дальше уже на аритектуру таргета
Олександр
Вряд ли о нем кто-то знает в индустрии, слишком молодой язык. Я вот вообще первый раз слышу о нем.
Pepe 🐸