170 похожих чатов

Если написать вот так в коде int64_t(-1), то приведение int-а

выполнится в рантайме или в компайл тайме?

26 ответов

19 просмотров

проверь

d7d1cd- Автор вопроса

почему тебя это беспокоит?

d7d1cd
Как?

godbolt посмотри что получится

в компайл

по идее при выполнении, ты ведь инициализируешь чем-то

d7d1cd- Автор вопроса
Alexander Karaev
почему тебя это беспокоит?

Наверное потому, что люди не зря стали придумывать constexpr и consteval. Хотят, чтобы больше было сделано в компайлтайме.

d7d1cd- Автор вопроса
d7d1cd
Наверное потому, что люди не зря стали придумывать...

так чем твой вопрос обусловлен? скоростью работы программы? поведение не то, которое ожидаешь? я без подвоха спросил, хочу понимать мотивацию вопроса

int64_t(-1) и static_cast<int64_t>(-1) идентичны в данном контексте

d7d1cd- Автор вопроса
Alexander Karaev
int64_t(-1) и static_cast<int64_t>(-1) идентичны в...

А почему тут это работает, а в случае auto v = MyIntegerType(-1) не будет?

d7d1cd
А почему тут это работает, а в случае auto v = MyI...

что такое MyIntegerType? класс? но ведь int64_t - не класс

d7d1cd- Автор вопроса
d7d1cd
А как правильно называть int64_t?

так и называй, всякие ll это бесячее и не понятное

d7d1cd
А как правильно называть int64_t?

это алиас (на какой-то из фундаментальных типов)

d7d1cd- Автор вопроса
Alexander Karaev
это алиас (на какой-то из фундаментальных типов)

Хорошо. Тогда, получается, для приведения к таким типам можно никогда не применять static_cast? Можно просто писать int64_t(val), int(val) или double(8)

это уже вопрос стиля. если речь про литерал, то лучше использовать суффиксы (кроме случаев, когда тип неизвестен - типа int64_t - там под капотом может быть long/long long). если речь про каст рантайм значения, то предпочтительнее static_cast, т.к. int64_t(..) ничем не лучше C-style cast'а

d7d1cd- Автор вопроса
Alexander Karaev
это уже вопрос стиля. если речь про литерал, то лу...

Что использовать, когда тип под капотом не известен?

d7d1cd- Автор вопроса
Alexander Karaev
вопрос стиля и вкуса

Ок. Крайний вопрос по этой теме. Чем int64_t(val) хуже статик каста?

d7d1cd
Ок. Крайний вопрос по этой теме. Чем int64_t(val) ...

не могу придумать хороших аргументов, кроме того, что он эквивалентен C-style касту, который общепринято плох

Не проще ли использовать 64 битный целочисленный литерал?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта