思考:为什么C++函数能重载,而C不能?
我的理解:总所周知,在C与C++编译器中,函数名是作为地址常量存在的,指向该函数的入口地址,
而不同的是,假设C能重载,那么函数名一样,即入口地址一样,调用时始终只能调用同一个函数;而C++
在处理这一点时,C++的编译器会给重载的函数安排一个区别于原函数的函数名,即入口地址不一样,故
调用的时候能调用到对应的重载后的函数
思考:为什么C++函数能重载,而C不能?
我的理解:总所周知,在C与C++编译器中,函数名是作为地址常量存在的,指向该函数的入口地址,
而不同的是,假设C能重载,那么函数名一样,即入口地址一样,调用时始终只能调用同一个函数;而C++
在处理这一点时,C++的编译器会给重载的函数安排一个区别于原函数的函数名,即入口地址不一样,故
调用的时候能调用到对应的重载后的函数