我在一个类中有一大批这样的函数,每个函数都返回一个整型值表示一个特定的含义,比如运行时间,温度等。而且这些函数内部都是仅仅返回一个值,就一行源代码。我想都改成inline提高速度,但是总有几个不行,编译无错误,Link时就说找不到了,真奇怪。我这些函数也不是虚函数,也不是静态的。
解决方案 »
- MFC连接MySQL的问题和远程数据传输的问题
- 奇怪的问题,折腾好久了。没有Messagebox就不显示按钮?
- 有没有什么函数或者命令可以控制路由器重新拨号么?
- vc调试问题
- 高手请进
- 怎样发送消息给另一个程序,控制它运行指定函数?
- 提问:要在list control中显示一个目录下的文件和其icon。(30日12:00前结账)
- 为什么自己调用Create产生的Button不响应Enter键,只响应空格键, 而在资源里直接添加的Button都可以响应. 拜托,谢了先
- 一个不可不试的 语音软件 ... ... (强力推荐超酷TTS应用软件)
- 谁有 Effective C++中文版?可以共享一下吗?
- MFC 重画视图的问题,急!
- 在线等前辈赐教 如何画以下一条直线?万分感谢
其实就是一个很普通的类,很普通的一个成员函数,例如
int ClassA::GetSomeVar( void )
{
return m_nAge;
}
在类声明体内声明了函数,在类声明体外部实现函数,在函数体前要加上inline
class A
{
public:
inline int GetSomeVar( void )
{
return m_nAge;
}
};
//然后实现
int ClassA::GetSomeVar( void )
{
return m_nAge;
} //就这样应该可以吧
在函数定义处,要加上inline,并且,就算加上了inline关键字,能不能成为内联函数,还是得看编译器,编译器还有一个调整地过程。
纯顶~如果写在cpp中,必须手工在调用的cpp文件中copy一遍。
我前几天遇到同样的问题,看了下面的文章恍然大悟。
http://blog.csdn.net/tonyxiaohome/archive/2009/05/16/4191800.aspx