试设计一个复数类,该类有实部和虚部两个成员数据,成员数据采用私有访问权限,同时该类有两个公用成员函数,分别用来设置成员数据和输出成员数据,在主函数中分别采用对象方式,指针方式和引用方式来调用该类的公有函数设置和输出成员数据。
时间: 2023-05-11 20:04:22 浏览: 167
以下是复数类的代码:
```cpp
class Complex {
private:
double real;
double imag;
public:
Complex() : real(0), imag(0) {}
Complex(double r, double i) : real(r), imag(i) {}
void setReal(double r) { real = r; }
void setImag(double i) { imag = i; }
void output() { cout << real << " + " << imag << "i" << endl; }
};
int main() {
Complex c1;
c1.setReal(1);
c1.setImag(2);
c1.output();
Complex* c2 = new Complex(3, 4);
c2->setReal(5);
c2->setImag(6);
c2->output();
delete c2;
Complex& c3 = c1;
c3.setReal(7);
c3.setImag(8);
c1.output();
return 0;
}
```
这个类有两个私有成员变量,分别表示实部和虚部。它有两个公有成员函数,一个用于设置实部和虚部,另一个用于输出实部和虚部。在主函数中,我们创建了一个对象 `c1`,一个指针 `c2` 和一个引用 `c3`,并使用它们来调用类的公有函数。