[细节扣扣]inline那些事
来源:互联网 发布:越南网络电视直播 编辑:程序博客网 时间:2024/04/28 18:25
给个简单的例子:
test1.h:
void run();
test1.c:
inline void run(){ do sth. }
test2.c:
#include "test1.h"
int main(){
run();
return 0;
}
分别用gcc 和 g++ 执行
gcc test1.c test2.c
g++ test1.c test2.c
您的第一答案是啥?都能编译通过吗?
看下在gcc 4.8.1下,是能通过,但是在g++ 4.8.1下,打印出了错误:
test2.o: In function `main':
test2.c:(.text+0x7): undefined reference to `run()'
collect2: error: ld returned 1 exit status
两者在预处理的过程中都保留了inline关键字。
nm了在gcc和g++情况下的test1.o的符号表,发现g++并没有将inline run 函数编译到.o文件,不会生成独立的汇编码。
0 0
- [细节扣扣]inline那些事
- C++那些细节--inline关键字
- block,inline和inline-block细节对比
- block,inline和inline-block细节对比
- java 代码细节(inline temp)
- IphoneUI那些细节
- IphoneUI那些细节
- 串口的那些细节
- 不用在意那些细节。
- 【CSS】block,inline和inline-block细节对比
- java 代码细节(Inline Method)
- block,inline和inlinke-block细节对比
- block,inline和inlinke-block细节对比
- block,inline和inlinke-block细节对比
- block,inline和inlinke-block细节对比
- 交互细节中那些变形金刚
- C++那些细节--static关键字
- C++那些细节--typedef关键字
- Spring MVC 在JSP中获取service层的Bean对象
- 【编译原理龙书笔记】(二)一个简单的语法制导翻译器(仍未完成)
- 如何计算时间复杂度
- Uva - 1593 - Alignment of Code
- 四轴飞行器姿态解算预备知识
- [细节扣扣]inline那些事
- java学习笔记2015-6-5
- 数据结构基础(2)---链表基础概念
- 注册表卸载残留
- protobuf的编译
- Search in Rotated Sorted Array && Search in Rotated Sorted ArrayII
- Leetcode[173]-Binary Search Tree Iterator
- 数据结构基础(3)---C语言实现单链表
- ScrollView下嵌套GridView或ListView默认不在顶部的解决方法