一.构造函数不会用了。
常见的有:
1 .默认构造函数:
在class里面,
fushu()
在class外面
fushu::fushu()
{
real= ;
imaginary= ;
}
该函数在定义对象时,就被调用
2.带形参的构造函数:
在class里面:
fushu(double _real=0,double _imaginary=0)
在class外面:
void fushu::fushu(double _real,double _imaginary)
{
real= _real ;
imaginary= _imaginary ;
}
这种在主函数中需要传递参数时调用,没有参数时,私有成分都会被赋为0,有参数时为参数。
3.构造函数初始化列表
在class里
fushu(double _real=0,double _imaginary=0 );
在class外面
fushu::fushu(double _real,double _imaginary):real(_real),imaginary(_imaginary)
{ }
这种是有参数的话传给形参,形参再传给私有成分,没参数相当于默认构造函数,私有成分被赋为默认值。
4.最直接方便的方法
在class里面的public里
fushu(double _real=0,double _imaginary=0):real(_real),imaginary(_imaginary)
{};
默认值视题目具体情况而定。
二.运算符重载,比如fushu f1,f2.主函数中:f1+f2;
重载函数中:
fushu operator+(fushu f)
{
real=real+f.real 此处的real为f1的real, 此句表示f1的real改变数值。
}