#include <iostream>
using namespace std;
//构造函数必须是公有的
/**
* 一个类被创建时,会发生两件事:
* (1)为对象分配内存
* (2)调用构造函数来初始化内存
* */
/**
* 在用默认构造函数创建对象时,如果创建的是全局对象或静态对象,则对象成员数据全为0,如果创建的是局部对象,其成员数据是无意义的随机数
* 只要一个类定义了一个构造函数,C++就不再提供默认构造函数。如还需要无参数构造函数,则必须自己定义。
* */
class computer
{
//默认访问权限是私有的
int op1; //操作数
char ch; //运算符
int op2; //操作数
public:
computer(int b, char d, int c)
{
this->op1 = b;
this->ch = d;
this->op2 = c;
}
computer()
{
}
void Set(int b, char d, int c)
{
op1 = b;
ch = d;
op2 = c;
}
void Show();
void Init()
{
op1 = 3;
ch = '+';
op2 = 5;
}
};
void computer::Show()
{
//成员函数类外实现
switch (ch)
{
case '+':
cout << op1 + op2 << endl;
break;
case '-':
cout << op1 - op2 << endl;
break;
case '*':
cout << op1 * op2 << endl;
break;
case '/':
if (op2 == 0)
{
cout << "不能被0整除" << endl;
break;
}
cout << op1 / op2 << endl;
break;
default:
cout << "运算符输入有误" << endl;
}
}
int main()
{
computer c;
c.Init(); //通过成员对象进行初始化
c.Show(); //显示运行结果
return 0;
}
未经允许不得转载!C++:构造函数