Привет, я написал функцию приведения из myClass в int и наоборот, поэтому я сделал одну из функций явной. При этом я получил ошибку.
Функции:
CircularInt(int n): CircularInt(1, 12 , n) { }
explicit operator int() const{ return current;};
Ошибка при:
CircularInt hour {1, 10 , 7 }; // current = 7
int i = hour;
Ошибка:
ошибка: невозможно преобразовать CircularInt в int при инициализации
int i = час;
Когда стирается «явное», все хорошо, почему это так?
приписка
Могу ли я упомянуть, что мне не удалось найти такой же вопрос, как я, я нашел много вопросов о людях, которые забыли сделать явные, спрашивая, что является явным (не нашел что-то в этих точных для меня вопросах) и т. Д.
Вероятно, это из-за непонимания полного понимания явного ...