- 博客(2)
- 收藏
- 关注
原创 C++类模板中的友元函数的声明和定义分别放在哪里
前面提到了模板的声明和定义推荐都放在头文件中,那么该类中的友元函数的声明和定义该放在哪里呢? 因为友元函数并不属于这个类, 按照习惯,我们一般把声明放在类中,而把定义放在类的外面。但对于类模板来说,这样就出问题了。很多编译器并不支持将友元函数的定义放在类的外面,会编译出错(一般是友元函数未定义)。故推荐按“inline”的形式定义类模板的友元函数。
2016-10-14 18:36:06
10417
原创 C++模板中声明和定义是否可以分开存放在.h和.cpp文件中
虽然我们遇到的绝大多数情况下,模板中函数的声明和定义都放在头文件中,但我想肯定有人和我一样,想知道是否可以分开存放。动手实验后,会发现有的可以,有的会报错,其实,这和编译器有关。 要弄清楚这个问题,首先要解决两个问题。 第一,为什么要把函数的声明放在头文件中,而定义放在.cpp文件中? 除了隐藏代码之外,如果将函数的定义也放入头文件中,那么每个include了这
2016-10-11 15:03:00
6588
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人