C++使用tips

xiaoxiao2021-02-28  134

1.C++中的explicit关键字

使用了该关键字,构造函数不允许使用隐式构造,如下

class A{ public: A(int a){num=a;} private: int num; } int main(){ A a(2);//OK A b=2;//ERROR,使用了隐式构造。错误。 return 0; }

2.C++的类前置声明

类的前置声明: Class B;//b的前置声明 Class A{ private: B *b_; } Class B{ private: A *a_; int number_; } 如果没有前置声明,会导致编译报错。还有使用前置声明时候,在前面的类使用下面定义的类时候,或者互相调用的时候,要是用指针或者引用来声明该类成员。 注:使用类前置声明时候,在该类使用某类作为成员变量时候,使用指针是最好的做法。 前置声明的好处: 1.使用了类前置定义,编译器只需要知道该类的存在,而不用知道其具体实现和定义,加快了编译速度。 2..避免了复杂了头文件出现多次引用某个头的坏处。
转载请注明原文地址: https://www.6miu.com/read-41232.html

最新回复(0)