关于inline 导致链接失败!
来源:互联网 发布:mac开机有个客人用户 编辑:程序博客网 时间:2024/04/25 16:35
解决方案:
1) 函数实现放在.h文件里面,和函数声明在一起。
2) 函数实现前面加上 extern 关键字。
在.cpp里的函数定义前加上extern,这会引发一个warning : 'extern' storage-class specifier illegal on member definition,可以用#pragma warning (disable : 4630)屏蔽之。
微软的理解:
inline的函数声明和实现必须在一起。如果inline的函数实现放在cpp里面,默认是internal链接属性。
这会导致在别的cpp文件里面调用inline函数链接失败。
和C++标准是一致的。
C++标准草案的说明:
"Functions that are declared as inline and that are not class member functions have internal linkage unless otherwise specified."
被声明为inline的非类成员函数,除非特别指定,默认具有internal链接属性。
- 关于inline 导致链接失败!
- DeleteMediaType()导致链接失败
- GCC 链接顺序导致使用MongoDB的应用链接失败
- 关于inline关键字导致的 unresolved external symbol问题
- 关于Clear调用失败----导致残影
- 关于SVN提交时部分文件失败导致提交失败
- 如何解决动态链接导致的程序启动失败
- 服务器安全狗导致FTP链接、上传失败 解决方法
- redis 跨机房 连接失败导致一致链接不上
- vnc Windows客户端输入格式错误导致的链接失败
- 微信分享非安全域名链接导致分享失败
- 关于inline
- 关于inline
- 关于UTF-8签名导致的编译失败问题
- 关于utf8编码文件导致编译失败的问题
- 关于静态链接导致ACE未初始化的问题
- 安装intel c++8.0后导致vc6编译正常的项目链接失败的一个解决方法
- matlab与c混合编程: 注释导致mex编译链接失败例子
- SQL统计哪些表使用分区表
- 人比事更烦心
- 网页对话框showModalDialog
- 接到前前老板给我推荐工作的电话
- basepage
- 关于inline 导致链接失败!
- 预防肝癌的最佳美食
- C++类类型的转换
- Handling workloads on SQL Server 2008 with Resource Governor
- Error spawning 'cmd.exe' 编译问题
- Google Chrome 源码下载地址 (Google Chrome Source Code Download)
- CSDN 2009中国软件技术英雄会(北京站) 之 我评的奖
- 申明
- MISRA C指导指南解读系列2(MISRA 规则 1- 10)