Как внедрить QTime в QT? - PullRequest
1 голос
/ 07 июня 2011

У меня есть это в моем заголовочном файле:

explicit AccessSchedule(QWidget *parent = 0,QString item = "",QTime timefrom ) 

Как инициализировать timefrom?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 07 июня 2011

Вы когда-нибудь рассматривали возможность использования QTime :: currentTime () в качестве параметра по умолчанию? то есть

explicit AccessSchedule(QWidget *parent = 0,QString item = "",QTime timefrom=QTime::currentTime() ) 

Таким образом, вы не должны проверять, является ли объект isValid () или isNull (), который, я думаю, делает код более читабелен. Но это ваш звонок, конечно.

1 голос
/ 07 июня 2011

Если вы хотите установить время по умолчанию, вы можете написать:

explicit AccessSchedule(QWidget *parent = 0,QString item = "", QTime timefrom = QTime(11, 45));

timefrom будет представлять 11:45.Если вы просто введете:

..., QTime timefrom = QTime());

timefrom будет нулевым объектом времени, то есть метод isNull() вернет true, а isValid() вернет false.

0 голосов
/ 08 июня 2011

Ваши аргументы функции находятся в неправильном порядке. Аргументы со значением по умолчанию должны быть ВСЕГДА в конце списка аргументов. Читать это: http://www.learncpp.com/cpp-tutorial/77-default-parameters/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...