c++中使用include和直接写class类名的区别
来源:互联网 发布:php 全局命名空间 编辑:程序博客网 时间:2024/06/05 23:39
在写 头文件的时间 经常会
有一些 class QFile 等这类 看似 是声明的东西..例如下面
#ifndef WINDOW_H
#define WINDOW_H
QT_BEGIN_NAMESPACE
class QTcpServer;
class QTcpSocket;
class QProgressBar;
class QLabel;
class QDialogButtonBox;
class QFile;
QT_END_NAMESPACE
//code end
class QAction;
class QCheckBox;
...
如果没有 声明 将会 出现类似下面的错误
ISO C++ forbids declaration of 'QFile' with no type
那么 这个是做什么用的呢????
是因为在头文件里面只有这些类的指针申明,并没有真正实例化,在这个头文件对应的cpp文件里面应该会
#include < QDialogButtonBox>
#include < QFile >
...
在cpp文件里面才会正真实例化这些类。
其 实直接在头文件里面#include <QDialogButtonBox> #include<QFile>也是可以的,像它这样做,好像是可以降低各个文件编译时的关联度,不会在改动了一下部分类的时候,引发其他大量文件的重新编译,在做小工程的时候没什么区别,但是做大了,编译一次需要好几个小时的时候,这样做的优势就显现出来了
class
include头文件则是将整个该头文件与使用到的地方关联起来。
使用class
#include "xx.h" 在编译的时候把xx.h文件直接展开,所以里面的接口都能用,可以申明对象。但是classxx;这种方式就不会,你只能使用它的指针或者引用,你不能创建申明对象。
- c++中使用include和直接写class类名的区别
- C++中直接class 类名和#include的区别
- include和class+类名的区别
- #include和直接写class加类名的区别
- “#include 头文件”与直接写“class 类名”有何区别
- C++中 #include与直接写class加类名有何区别
- C++中 #include与直接写class加类名有何区别
- C++中class和include的区别
- C语言中,#include的用法:#include "" 和 #include<>区别
- #include与直接写class加类名有何区别
- #include与直接写class加类名有何区别
- #include与直接写class加类名有何区别
- #include与直接写class加类名有何区别
- include 和 class类声明的区别
- class和#include 的区别
- object-c中#import #include @class的区别
- Objective-C #include、#import 、 @class的使用区别
- C/C++语言中,#include <>和#include ""的区别
- 北大青鸟北科教学本部
- 数据结构之二叉查找树(BST)-(六)
- 关于CvSeq指针的内存释放问题
- 第7周项目1(1)实现复数类中的运算符重载
- 10条PHP编程习惯
- c++中使用include和直接写class类名的区别
- qemu-kvm宿主机和客户机之间的文件共享
- C++ 线程安全的单例模式
- 局部敏感哈希(Locality-Sensitive Hashing, LSH)方法介绍
- SVN出现错误“error running context: an error occurred during ssl communication”的一种可能的解决方法
- Chrome DevTools(4):推荐几款DevTools插件
- 研究人员在RSA大会上演示利用恶意JPEG图片入侵企业内网
- matlab中grid的用法
- 打印概述