Сообщение Re[3]: operator int от 24.05.2025 14:45
Изменено 24.05.2025 14:46 Muxa
Re[3]: operator int
Здравствуйте, Marty, Вы писали:
M>Здравствуйте, Muxa, Вы писали:
M>>>Что будет выбирать компилятор, если ему доступен конструктор моего типа из интегрального и не-explicit оператор преобразования в интегральный тип?
M>>А это как-то влияет не результат вычислений в рантайме?
M>У меня "интегральный" тип с произвольным размером. Если будет преобразование в интегральный тип, то будет усечение, если мой — усечения не будет. Да, в этом плане мой тип ведёт себя не совсем как интегральный, тут я наврал
Тогда компилятор будет выбирать операторы в зависимости от порядка вычислений в выражениях, если ему нужно будет сложить два инта то он сложит два инта. И насколько я знаю, поправьте меня знатоки стандарта, этот порядок не всегда определен. Например, x = v + u + z — хз в каком порядке будет вычислено в итоге.
M>Здравствуйте, Muxa, Вы писали:
M>>>Что будет выбирать компилятор, если ему доступен конструктор моего типа из интегрального и не-explicit оператор преобразования в интегральный тип?
M>>А это как-то влияет не результат вычислений в рантайме?
M>У меня "интегральный" тип с произвольным размером. Если будет преобразование в интегральный тип, то будет усечение, если мой — усечения не будет. Да, в этом плане мой тип ведёт себя не совсем как интегральный, тут я наврал
Тогда компилятор будет выбирать операторы в зависимости от порядка вычислений в выражениях, если ему нужно будет сложить два инта то он сложит два инта. И насколько я знаю, поправьте меня знатоки стандарта, этот порядок не всегда определен. Например, x = v + u + z — хз в каком порядке будет вычислено в итоге.
Re[3]: operator int
M>>А это как-то влияет не результат вычислений в рантайме?
M>У меня "интегральный" тип с произвольным размером. Если будет преобразование в интегральный тип, то будет усечение, если мой — усечения не будет. Да, в этом плане мой тип ведёт себя не совсем как интегральный, тут я наврал
Тогда компилятор будет выбирать операторы в зависимости от порядка вычислений в выражениях, если ему нужно будет сложить два инта то он сложит два инта. И насколько я знаю, поправьте меня знатоки стандарта, этот порядок не всегда определен. Например, x = v + u + z — хз в каком порядке будет вычислено в итоге.
M>У меня "интегральный" тип с произвольным размером. Если будет преобразование в интегральный тип, то будет усечение, если мой — усечения не будет. Да, в этом плане мой тип ведёт себя не совсем как интегральный, тут я наврал
Тогда компилятор будет выбирать операторы в зависимости от порядка вычислений в выражениях, если ему нужно будет сложить два инта то он сложит два инта. И насколько я знаю, поправьте меня знатоки стандарта, этот порядок не всегда определен. Например, x = v + u + z — хз в каком порядке будет вычислено в итоге.