• 7916阅读
  • 6回复

【已解决】为什么类的构造函数不能重载呢? [复制链接]

上一主题 下一主题
离线beaujolais
 
只看楼主 正序阅读 楼主  发表于: 2010-07-22
如题:
    
#ifndef CLOCKWIDGET_H
#define CLOCKWIDGET_H

#include <QWidget>

class ClockWidget : public QWidget
{
    Q_OBJECT
public:
    explicit ClockWidget(QWidget *parent = 0);

  //  ClockWidget(QWidget *parent = 0,bool f,int tz);
   ...............
};

#endif   // CLOCKWIDGET_H

我想自己重载一个构造函数,这样不行么??
[ 此帖被beaujolais在2010-07-22 17:43重新编辑 ]
离线beaujolais
只看该作者 6楼 发表于: 2010-07-22
OK,问题解决了。
多谢楼上两位兄弟哈

不过重构只是帮我排除了一个问题的可能原因。

离线beaujolais
只看该作者 5楼 发表于: 2010-07-22
ClockWidget(QWidget *parent = 0,bool f,int tz);
改为
ClockWidget(bool f,int tz,QWidget *parent = 0);

我去试试哈~~
离线beaujolais
只看该作者 4楼 发表于: 2010-07-22
clockwidget.h:15: error: default argument missing for parameter 2 of 'ClockWidget::ClockWidget(QWidget*, bool, int)'
clockwidget.h:15: error: default argument missing for parameter 3 of 'ClockWidget::ClockWidget(QWidget*, bool, int)'

理所当然编译不过去啊。

paranoid  兄  :
      提供了默认值的参数得放在最后

是指什么意思??
离线ninsun

只看该作者 3楼 发表于: 2010-07-22
引用第2楼paranoid于2010-07-22 17:06发表的  :
提供了默认值的参数得放在最后

对!就是这个了!
离线paranoid
只看该作者 2楼 发表于: 2010-07-22
提供了默认值的参数得放在最后
离线ninsun

只看该作者 1楼 发表于: 2010-07-22
没有问题啊...
难道编译会报错吗?
把错误也发上来看看吧...
快速回复
限100 字节
 
上一个 下一个