问题总结持续更新中。。。
- 本人在学习过程中总结了一些在c++面试中可能会问到的问题,有什么不足的地方可以在评论区打出^_ ^。
函数重载的条件
- 函数重载:在C语言中,函数名必须是唯一的,程序中不允许出现同名的函数,在C++中是允许出现同名的函数,即在同一作用域内,具有相同函数名,不同参数列表的一组函数,称为函数重载。
函数重载实现的原理
- 编译器为了实现函数重载,也是默认为我们做了一些幕后的工作,编译器用不同的参数类型来修饰不同的函数名,比如void func();编译器可能会将函数名修饰成func,当编译器碰到void func(int x),編译器可能将函数名修饰为func_ int, 当编译器碰到void func(int x,char C),编译器可能会将函数名修饰为_func_ int_ char我这里使用”可能”这个字眼是因为编译器如何修饰重载的函数名称并没有一个统一的标准,所以不同的编译器可能会产生不同的内部名。
函数重载实现的条件
- 同一个作用域、参数的个数不同、参数类型不同、参数的顺序不同
描述类的封装性
- 封装特性包含两个方面:
- 一个是属性和变量合成一个整体;
- 一个是给属性和函数增加访问权限。
谈谈c与C++中struct的不同点
- c语言中struct只有数据
- c++中的struct不止有数据还有函数