Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 29.01.2019
Сообщений: 6
1

Запретить классу автоматическое преобразование

22.11.2019, 20:19. Показов 1200. Ответов 2

Здраствуйте, появились некоторые вопросы.
Вообщем надо было создать класс myTime, который будет содержать информацию о времени (часы, минуты, секунды) и к тому же перегрузить операторы (+; -; и т.д). И добавить преобразование к типу int, запретив автоматическое преобразование.
Так я как раз таки не совсем понимаю как это запретить автоматическое преобразование. Может кто помочь?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2019, 20:19
Ответы с готовыми решениями:

Автоматическое преобразование стандартных типов
Если моя функция LOG принимает qString* можно ли сделать так чтобы автоматически вызывалась...

Автоматическое преобразование китайского кода в нормальный
У меня есть огромный шмат кода примерно такого вида: if (x < 10 && y > 0 && z != 0) return 1;...

Как запретить автоматическое разворачивание блока кода?
Всём здравствуйте. Одним из наиприятнейших новшеств XE-4 является возможность сворачивать куски...

Автоматическое понижающее преобразование типа
Не пойму почему так происходит. Компилировал в Code Blocks с MinGW. Переменная типа long без...

2
6738 / 4537 / 1839
Регистрация: 07.05.2019
Сообщений: 13,725
Записей в блоге: 1
22.11.2019, 20:41 2
Лучший ответ Сообщение было отмечено eddysh как решение

Решение

Цитата Сообщение от eddysh Посмотреть сообщение
Так я как раз таки не совсем понимаю как это запретить автоматическое преобразование. Может кто помочь?
Для этого есть ключевое слово explicit, просто добавь его к оператору in()
C++
1
2
3
4
5
6
7
8
9
class MyTime
{
public:
explicit operator int() const
{
      return ....................................
}
.............................................
};
1
0 / 0 / 0
Регистрация: 29.01.2019
Сообщений: 6
22.11.2019, 21:02  [ТС] 3
Спасибо огромное!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.11.2019, 21:02

Почему не происходит автоматическое преобразование стандартных типов?
Имеется следующий код : int a = 10; cout<<a/100<<endl; Вариант из явным преобразованием...

Как запретить преобразование типов при использовании cin
Как запретить преобразование типов при использовании объекта потокового ввода cin. Проблема в том,...

Как запретить компилятору неявное преобразование из числового типа в символьный?
У мя возникла такая проблема: я ввожу данные типа char и мне надо быть уверенным, что я ввел именно...

Запретить автоматическое растягивание TextBox
День добрый. Создал UserControl. На нем есть TextBox. Когда ввожу в него текст, то он...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.