![](https://csdnimg.cn/release/download_crawler_static/87510060/bg4.jpg)
void main()
{one data(2,3);
cout<<data.geta1()<<endl;
cout<<data.geta2()<<endl;
}
例题 12:分析以下程序的错误原因,给出修改方案使之能正确运行。
#include <iostream.h>
class Amplifier{
float invol,outvol;
public:
Amplifier(float vin,float vout)
{invol=vin;outvol=vout;}
float gain();
};
Amplifier::float gain(){ return outvol/invol; }
void main()
{Amplifier amp(5.0,10.0);
cout<<"\n\nThe gain is =>"<<gain()<<endl;
}
分析:成员函数在类体外定义格式是:函数返回类型类名::成员函数名(参数表);
成员函数调用格式是:对象名.成员函数名(参数表)。
改正后的程序如下:
#include <iostream.h>
class Amplifier
{ float invol,outvol;
public:
Amplifier(float vin,float vout) {invol=vin;outvol=vout;}
float gain();
};
float Amplifier::gain(){ return outvol/invol;}
void main()
{ Amplifier amp(5.0,10.0);
cout<<"\n\nThe gain is =>"<<amp.gain()<<endl;
}
例题 13:下列程序的运行结果是 。
#include <iostream.h>
class point
{int x,y;
public:
point(int a,int b)
{x=a;y=b;
cout<<"calling the constructor function."<<endl;
}
point(point &p);