我的头文件中有这个:
explicit AccessSchedule(QWidget *parent = 0,QString item = "",QTime timefrom )
如何初始化timefrom
?
感谢。
答案 0 :(得分:2)
您是否考虑过使用QTime::currentTime()作为默认参数? 即
explicit AccessSchedule(QWidget *parent = 0,QString item = "",QTime timefrom=QTime::currentTime() )
这样你不必须检查对象是否为isValid()或isNull() 代码更具可读性。但这当然是你的呼唤。
答案 1 :(得分:1)
如果您想要默认时间,可以写:
explicit AccessSchedule(QWidget *parent = 0,QString item = "", QTime timefrom = QTime(11, 45));
timefrom
将代表11:45。如果你只是把:
..., QTime timefrom = QTime());
timefrom
将是一个“空”时间对象,即它的isNull()
方法将返回true,isValid()
将返回false。
答案 2 :(得分:0)
您的函数参数的顺序错误。具有默认值的参数应始终位于参数列表的末尾。阅读:http://www.learncpp.com/cpp-tutorial/77-default-parameters/