inline函数在class内定义,
构造函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class complex{
public:
//构造函数名称和类的名称相同
//构造函数不需要返回值(因为是用来创建对象的)
complex(double r=0,double i=0)
:re(r),im(i)//初值列,初始列
{ }
//构造函数也可以这样,效率差些,因为上面的是初始化,下面这种是赋值。一般数据要先初始化,再赋值。
complex(double r=0,double i=0)
{
re=r;
im=i;
}
//常量成员函数,加上const,外界不能改变类里面的数据
double real()const{return re;}
private:
double re,im;
};
private里的,只能在class里使用,数据放在private,想被外界调用放在public
创建对象:complex c1(2,1);
函数重载overloading
参数传递:值传递和引用传递、
返回值传递:return by value return by reference.
friend(友元)
private:
friend complex
相同class的各个对象互为friends友元
操作符重载