一个关于c++的几个问题

来源:百度知道 编辑:UC知道 时间:2024/05/22 12:22:38
1. 能够重载函数是为什么还使用默认值?何时使用重载?何时使用默认值?

2. 编写类构造函数时,如何决定哪些放在初始化列表中,那些放在构造函数体中?

3. 为什么有些函数成员定义在类声明内,有些不是?

1. 重栽函数和默认的函数并不冲突, 具体使用哪一个要看你的需求了,比如构造函数, 你可以自己定义一个构造函数, 当然也可以使用系统默认的构造函数.

2. 一般情况而言, 能放在初始化列表里面的尽量放在初始化列表里面,因为这样有更高的效率.如果你把成员的初始化放在构造函数体内, 系统会先调用默认的构造函数, 发现不匹配后在寻找你定义的构造函数, 但是如果放在初始化列表里面, 那么系统就会首先调用你定义的构造函数

3. 一般来说,类的成员函数是这样布局的,在.h文件中声明, 在.cpp文件中实现. 而类的声明也在.h文件中, 所以,成员函数是在类内声明, 类外实现.

..你问的倒是挺全面,你得自己好好看看书, 我告诉你了,你也是糊涂,
只能大概的说一下,
第一个问题,
重载是发生在同一个类里面,是函数名相同, 参数和返回值类型不同。
2
初始化的一半都是成员变量。为了避免后面出错,有些你也可以在用倒的时候再初始化,
3
内部的是内联函数,这是因为调用的时候比较节省时间,如果把函数定义放在外面定义比方在里面定义要花费更多的调用时间,那么就应该放在汉书题里面。

重载是重写在父类中的方法 而其他类不能调用 所以可以使用默认值

第三个问题是废话 定义在类里的可以在整个类里使用(就是全局变量)
定义在方法里的只能在方法里用 不知道一对大括号是一家马

晕,真聪明。哈哈, 你小子~