operator int
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 24.05.25 14:19
Оценка:
Здравствуйте!

Есть свой класс, он реализован так, что ведёт себя как интегральный тип. Есть конструктор из интегрального типа. Надо также сделать оператор преобразования в интегральный тип operator int/operator T.

Вопрос — сделать этот оператор explicit или нет? Если сделать explicit, то он уже не будет вести себя как интегральный — компилятор не сможет его неявно преобразовать в интегральный тип.

С другой стороны, если в выражении участвует мой тип и интегральные типы, то мне надо, чтобы интегральные преобразовывались в мой тип, а не наоборот, так как мой тип шире. Что будет выбирать компилятор, если ему доступен конструктор моего типа из интегрального и не-explicit оператор преобразования в интегральный тип?
Маньяк Робокряк колесит по городу
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.