c++中构造函数后的:i(I)和I(i)是什么意思啊?

来源:百度知道 编辑:UC知道 时间:2024/05/17 03:13:18
在类中经常有这样的现象如下例:

class integer{
int i;
pubic:
integer(int I=0):I(I){}
int value()const{
reture i;
}
void set(int&I){
i=I;
}

};

还有例子:
class base{
int i;
pubic:
base (int I):i(I){}

.......
}

小弟刚学编程,求教诸位大侠!
望赐教! 先谢过了
谢谢各位的回答,我是对其中的i(I)和I(i)的意义不是很明白。

integer(int I=0):I(I){}

这样的形式叫 函数初始化表

是构造函数初始化数据成员另一种方法

具体形式是

类名 (数据类型 变量名A……):类的数据成员名B(A)类……{ 函数体语句}

上面的省略号表示可以是多个变量或成员

{}里面也可以添加执行语句,但一般不在构造函数中添加和初始化无关的语句

~~~~~~~~~~~~~~~~~~~~
i(I)就是把I的值给而已

简单讲就是把括号里的值个了括号前的变量啊

构造函数初始化数据成员另一种方法

初始化表 你可以看看 书

这种格式 一般用于引用类型等不能在函数体内复制的变量, 不过一般程序员 都喜欢用这种方式给变量初始化

是在进行构造函数初始化,如base(int I):i(I){}
就是下面写法的另一种形式,只是简洁了点
base(int I)
{
i=I;//这里的i是此类的数据成员
}