5.7 C和C++关系
C语言偏底层,简洁但是麻烦。抽象起来不像其他的语言那样方便。所以应用大部分都是硬件或者是系统组件。
C++结合了C语言的底层编程能力同时提供了丰富抽象能力,同时无可避免的增加了语言的复杂度。换句话说,做事情的方法不止一种,而用C++就可以给你几乎所有的选择,于是C++能利用各种抽象做所有事情(当然前提是你能驾驭得起。)
例题1:在C++程序中调用被C编译器编译后的函数,为什么要加 extern "C" ?
extern "C" 表示按照C语言方式进行连接。
C++语言支持函数重载,C语言不支持函数重载(重载:重载就是同一个名字,不同的参数表(类型、顺序、个数都不一样)。)。函数被C++编译后在库中的名字与C语言的不同。假设某个函数的原型为void foo(int x,int y).该函数被C编译器编译后在库中的名字为_foo,而在C++编译器则会产生像