1.静态成员变量定义问题:
在类中声明了静态成员变量,必须在相应的Cpp中定义。因为一般成员变量是在定义类的时候分配空间的,而静态成员变量在没有定义类之前,即可以使用;所以要找个地方分配空间给他。
2. 模板函数声明和定义(.h和.cpp)要放在一起(一个.h)问题
如果分开写,编译器会在链接的时候出错。这是因为在编译模板类的定义.obj时候,还不知道模板元素T的类型,所以会出错。
本文探讨了静态成员变量的定义及其必要性,并解释了为什么必须在类外部为它们分配空间。此外,还讨论了模板函数的声明和定义为什么需要放在同一个头文件中,以及这种做法如何避免链接错误。
1.静态成员变量定义问题:
在类中声明了静态成员变量,必须在相应的Cpp中定义。因为一般成员变量是在定义类的时候分配空间的,而静态成员变量在没有定义类之前,即可以使用;所以要找个地方分配空间给他。
2. 模板函数声明和定义(.h和.cpp)要放在一起(一个.h)问题
如果分开写,编译器会在链接的时候出错。这是因为在编译模板类的定义.obj时候,还不知道模板元素T的类型,所以会出错。
2万+

被折叠的 条评论
为什么被折叠?