C++学习,实验三
一,
对象就相当于类型的变量,例如 int a;中 a就是int类型的对象。
构造函数就相当于对某个函数进行赋初值,如果没有写构造函数,那么编译器会自动生成一个隐含的默认构造函数。
复制构造函数就相当于把已经赋初值的某个函数,赋给另一个新的同类型的函数。
析构函数是相当于清理函数(对象被删除前,需要做一个清理工作),例如:在函数运行结束时,会有内存残余,而这些残余内存要释放出来,析构函数可以释放它们。
二,
#include<iostream> using namespace std; class Juxing{ public: Juxing(int a,int b); int area(); private: int chang; int kuan; }; Juxing::Juxing(int a,int b){ chang=a; kuan=b; } int Juxing::area(){ return chang*kuan; } int main(){ int chang; int kuan; cout<<"Please enter the chang and kuan of Juxing: "; cin>>chang>>kuan; Juxing juxing(chang,kuan); int s=juxing.area(); cout<<"juxing's area is: "<<s<<endl; return 0; }
#include<iostream> using namespace std; class Complex{ public: Complex(double a,double b); Complex(double a); double add(Complex &n); void show(); private: double real; double imaginary; }; Complex::Complex(double a,double b){ real=a; imaginary=b; } double Complex::add(Complex &n){ real=real+n.real; imaginary=imaginary+n.imaginary; } void Complex::show(){ cout<<real<<"+"<<imaginary<<"i"<<endl; } Complex::Complex(double a){ real=a; imaginary=0; } int main(){ double real; double imaginary; Complex c1(3,5); Complex c2=4.5; c1.add(c2); c1.show(); return 0; }
三,知识点总结
复制构造函数和构造函数这块还需继续。