试答一下:
一.声明实例其实是因为构造函数里面作了一些初始化的动作,否则直接调用QApplication.exec()会出问题的,java在你的程序运行前,已经由jvm作了很多工作了,但是c++是没有的.
二.写法不同而已,不用过于计较,静态方法的调用本来就可以这样子来调用,可以用类名来调用,如果是实例,也可以直接使用
三.你想用什么就是引用什么,当然,有些引用文件其实已经暗地里给你引用过来了,因为它里面也用到了一些其它的类,如上面的qobject,肯定是#include <QApplication>
#include <QPushButton>在这里面已经引用了,你可以顺便用,不过你不确定的话,其实可以加上#include<QObject>,这样也正规点
其实上面基本还是c++的的语法问题,看来楼主基本没怎么看c++基础啊