2、如果不想每次都用std的namespace,加using语句
例如:
#include<vector>
using namespace std
vector<int>vec
前向声明就是:可以声明一个类而不定义它
class Screen//declaration of the Screen class
这个声明,有时候被称为前向声明(forward declaration),在程序中引入了类类型的Screen.在声明之后,定义之前,类Screen是一个不完全类型(incompete type),即已知Screen是一个类型,但不知道包含哪些成员.
不完全类型只能以有限方式使用,不能定义该类型的对象,不完全类型只能用于定义指向该类型的指针及引用,或者用于声明(而不是定义)使用该类型作为形参类型或返回类型的函数.
这是因为不知道这个类型的占用的空间大小;
例子:
class A
class B {
private:
A* fPtrA
public:
void mymethod(const&A) const
}
前置声明的好处很多, 比如能避免头文件互相包含的冲突, 比如有时在一个头文件中只需要另一个头文件的某个类型定义, 只需要对它做一下前置声明即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)