标题:编译就是通不过,不知道为啥
只看楼主
songhuirong1
Rank: 2
等 级:论坛游民
帖 子:116
专家分:38
注 册:2010-6-15
结帖率:94.12%
 问题点数:0 回复次数:1 
编译就是通不过,不知道为啥
大家好。我是Qt初学者,我写了个小程序,我建的是Qt控制台应用程序,但是编译出错,不知道该怎么改,请大家帮忙。
程序代码:
#include
#include
using std::cout;
using std::endl;

class Employee : public QObject
{
    Q_OBJECT
public:
    Employee(int);
    int getSalary() const;
signals:
    void salaryChanged(int);
public slots:
    void setSalary(int);
private:
    int salary;
};

Employee::Employee(int salary)
{
    this->salary = salary;
    connect(this,SIGNAL(salaryChanged(int)),this,SLOT(setSalary(int)));
}

int Employee::getSalary() const
{
    return salary;
}

void Employee::setSalary(int newSalary)
{
    if(newSalary != salary)
    {
        salary = newSalary;
        emit salaryChanged(newSalary);
    }
}

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    Employee e(3200);
    e.setSalary(4500);

    return a.exec();
}
编译结果如下:
[local]1[/local]
搜索更多相关主题的帖子: 应用程序 private include public 
2011-10-15 20:18
h3wardt
Rank: 2
等 级:论坛游民
帖 子:8
专家分:20
注 册:2011-11-1
得分:0 
你这个程序的逻辑就有问题,信号一直给槽发信号。返回1是程序正常结束。
2011-11-01 04:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-352549-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.673166 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved