📄 classptr.cpp
字号:
//这个程序在本书所带软盘中。文件名为CLASSPTR.CPP
//这个程序利用指针和动态内存分配方法将英里换算成公里。
#include <iostream.h>
#include <ctype.h>
class distance
{
private:
float miles, kilometers;
public:
distance() //直接构造函数和初始化
{
miles = kilometers = 0.0;
}
void get_data(void); //定义成员子程序
void convert(void);
void show(void);
};
//编写成员子程序get_data()
void distance::get_data()
{
cout << "输入要转换为公里的英里数: ";
cin >> miles;
}
//编写成员子程序convert()
void distance::convert()
{
kilometers = 1.6093 * miles;
}
//编写成员子程序show()
void distance::show()
{
cout << "转换结果为 " << kilometers << " 公里";
}
void main(void)
{
char choice;
do {
distance* dist; //定义一个指向dist的指针
dist = new distance; //为dist分配内存空间
(*dist).get_data(); //调用成员子程序get_data()
(*dist).convert(); //调用成员子程序convert()
(*dist).show(); //调用成员子程序show()
delete dist; //释放内存
cout << "\n还要继续吗(y/n)?: ";
cin >> choice;
} while(toupper(choice) == 'Y');
}
/*下面是这个程序运行后的一个典型输出结果:
输入要转换为公里的英里数: 55
转换结果为 88.5115 公里
还要继续吗(y/n)?: y
输入要转换为公里的英里数: 120
转换结果为 193.116 公里
还要继续吗(y/n)?: n
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -