注册 登录
编程论坛 C++教室

成员函数声明为inline的问题?

newyj 发布于 2008-05-06 21:52, 1361 次点击
成员函数声明为inline和不声明有什么区别?
7 回复
#2
sunkaidong2008-05-06 21:57
编译的时候直接把出现函数的地方用代码替换..减少压栈得时间..
#3
zjl1382008-05-06 22:00
在类内部定义的成员函数,将自动作为inline处理.
类成员函数声明成inline可以提高运行时效率
也可以在类定义体外部的函数定义上指定inline。在声明和定义处指定inline都是合法的。在类的外部定义inline的一个好处就可以使得类比较容易阅读。
#4
newyj2008-05-06 22:20
先谢谢 楼上的两位
那是不是说 声明为inline就都是好的
能不能说一下 声明为inline时不好的情况
#5
zjl1382008-05-06 22:31
那是不是说 声明为inline就都是好的?
当然不是。
当函数体比较大时,最好就不是内联.
这里有关于inline的讨论,可以看一下。
http://topic.
#6
newyj2008-05-06 22:35
谢谢啊
#7
sunkaidong2008-05-06 23:06
体积大的时候内联增加内存负担
#8
aipb20072008-05-07 00:01
inline几乎可以看做是编译器行为,短小的函数,你即使不声明,编译器也会为你优化,太大的函数,即使你声明了,编译器也不做任何改变。
1