zoukankan      html  css  js  c++  java
  • 什么情况下可以不创建QCoreApplication

    Under what circumstances do I not need to create a
    QApplication/QCoreApplication?
    https://snapbrowse.com/browse.php/Oi8vbGlzdHMudHJvbGx0ZWNoLmNvbS9xdC1pbnRlcmVzdC8yMDA2LTAyL3RocmVhZDAxNTQwLTAuaHRtbA_3D_3D/b0/fnorefer/
     
    That not really true if said like that. There are quite a bunch of
    classes (for example QString and all the containers) which can probably
    be safely used without a QCoreApplication object. Also basic
    signals/slots work without QCoreApplication (see attached files), from
    QCoreApplications documentation it looks to me that as long as you don't
    need Qt's event loop (either directly or one of the classes you use
    needs it) your safe without the QCoreApplication object. 
    
    However TT recommends to use a QCoreApplication, thus as long as you
    don't want to utilize another event-loop (from another lib) you should
    either already know that you don't need it or better use a
    QCoreApplication object.
    
    Andreas
    
    -- 
     [ signature omitted ] 
    
    #include <myobj.h>
    #include <iostream>
    
    int main(int argc, char *argv[])
    {
    	std::cout << "Creating myobj\n";
    	myobj* o = new myobj();
    	o->method1();
    	std::cout << "Deleting myobj\n";
    	delete o;
    	exit(0);
    }
    
    
    #include <iostream>
    
    #include <iostream>
    #include <myobj.h>
    
    myobj::myobj(QObject* parent)
    	: QObject(parent)
    {
    	connect(this, SIGNAL(signal1()), this, SLOT(slot1()));
    }
    
    void myobj::method1()
    {
    	std::cout << "method1 of myobj called\n";
    	emit signal1();
    }
    void myobj::slot1()
    {
    	std::cout << "slot1 of myobj called\n";
    }
    
    
    #include <QObject>
    
    #include <QObject>
    
    class myobj : public QObject
    {
    	Q_OBJECT
    	public:
    		myobj(QObject* parent = 0);
    		void method1();
    	public slots:
    		void slot1();
    	signals:
    		void signal1();
    };
    
  • 相关阅读:
    Linux下的邮件发送
    Linux下用户和raid练习题
    Linux centos7.5操作系统的安装
    Linux chattr文件锁
    Linux系统下root密码丢失解决方案
    周总结2
    课堂作业1
    开课博客
    阅读3
    作业8
  • 原文地址:https://www.cnblogs.com/cute/p/2096696.html
Copyright © 2011-2022 走看看