C++中的inline函数的实现部分到底该放在哪里
2014-06-26 20:08
513 查看
inline的意义在这里就不多说了,主要是实践上需要注意的地方。
关于定义inline函数的位置:
1. 可以在类内定义
class CA
{
public:
CA(void);
~CA(void);
inline voidShow() {xxx}
};
2.※可以在类外定义,但是这里千万注意,不要写在CPP文件中,要写在头文件中,否则产生链接错误(VS2008及以下)。
class CA
{
public:
CA(void);
~CA(void);
inline voidShow();
};
inline void CA::Show()
{
}
结论:确保调用处对函数定义在同一个编译单元,所以要保证inline函数定义在头文件当中。
关于定义inline函数的位置:
1. 可以在类内定义
class CA
{
public:
CA(void);
~CA(void);
inline voidShow() {xxx}
};
2.※可以在类外定义,但是这里千万注意,不要写在CPP文件中,要写在头文件中,否则产生链接错误(VS2008及以下)。
class CA
{
public:
CA(void);
~CA(void);
inline voidShow();
};
inline void CA::Show()
{
}
结论:确保调用处对函数定义在同一个编译单元,所以要保证inline函数定义在头文件当中。
相关文章推荐
- C++中inline函数的定义为什么要放在头文件中?头文件中“只定义一份”是什么意思?const object 和inline函数是“一次定义规则”
- 利用C++模板,代替虚函数,实现类的静态多态性(加入性能测试部分)
- C++程序设计语言书中11章实现Sting部分不会的地方
- C++中模板不能把实现和声明放在两个不同的文件下
- 设计模式之观察者模式,C++实现(下部分)
- C++中的虚函数到底怎么实现的?
- 二、Cocos2dx中Android部分的c++和java实现相互调用(高级篇)
- c++ 模版函数的定义和实现放在一个文件中
- c++ 实现部分排序,待改进
- 到底应该把网站放在哪里?
- java中用句柄与封装基础类的方法实现C++中指针的部分效果
- 利用C++模板,代替虚函数,实现类的静态多态性(加入性能测试部分)
- 类的内联函数的实现应该放在哪里
- C++第六周任务5:解决用一个项目多个文件的方式实现,其中两个类的声明放在一个.h文件中,每个类的成员函数分别放一个文件,main()函数用一个文件。体会这样安排的优点。
- (C++的对话)Solmyr 的小品文系列之一:字符串放在哪里?
- 《深度探索C++对象模型》读书笔记2:C++对象模型,我的虚拟函数被放在哪里?
- 类的内联函数的实现应该放在哪里
- C++中模板的声明和实现应该放在同一个文件中
- c++ 模版函数的定义和实现放在一个文件中 .
- c++创建栈及部分函数实现