| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Компилятор. |
| Автор: KAMLS 23.5.2017, 07:21 | ||
| Здравствуйте! Помогите пожалуйста понять что делает компилятор в подобной ситуации. Конструктор класса при создании объекта должен переводить формат времени 24 часа в формат времени 12 часов. Но конструктор должен работать только в момент создания объекта. time12 t12; Почему же работа функции конструктора осуществляется в следующей строке? t12=t24; Строка 91-92 Код рабочий, выглядит вот так:
|
| Автор: KAMLS 23.5.2017, 13:56 |
| Ну вообще, именно так конструктор и реализован в классе time12. Строка 44. В оригинале строка конвертации временного формата с использованием конструктора выглядит так: time12 t12=t24; но я в процессе познания работы конструкторов разбил строку на 2 строки чтобы посмотреть что получится. Оказалось компилятор справляется. Захотелось узнать как. Я еще многого не знаю про возможности компилятора по неявным действиям. p.s. Ах да, explicit то там нету, я его только сейчас изучать начал)) |