CLL-符号修饰与函数签名

我们知道,在c++中,函数是可以重载的,也就是说函数名相同,但参数不同。那么编译器和链接器是怎样区分两个同名的函数的呢?由目标文件的三魂七魄(如果不清楚可以看看这边文章)可以知道,函数名和变量名都是符号(symbol),正是c++的符号修饰(name decoration)机制支持了这种特性。 在c中,现在gcc编译器,函数名的符号一般都是函数名本身,所以c没有函数重载这样的特性。 下面,通过一个
相关文章
相关标签/搜索