//1.1封装
#include<bits/stdc++.h>
using namespace std;
class D{
public:
D(char *s="unknown" ,int i=0;double d=1){
strcpy(dateMember1 , s);
detaMember2=i;
detaMember3=d;
}
void menberFunction1() {
cout<<detaMember1<<' '<<detaMember2<<' '<<detaMember3<<' '<<endl;
}
void menberFunction2(int i=0,char *s="unknown") {
detaMember2=i;
cout<<i<<" received from "<<s<<endl;
}
protected:
char detaMember1[20]={'0'};
int detaMember2=0;
double detaMember3=0;
};
int main(){
/* D object1("object1",100,2000);//传参给函数D,若class中的函数D不存在则会报错,class的protect中dateMember1~3可以没有初始值。
object1.menberFunction1();
object1.menberFunction2(123,"object1");
//可实现与下列代码相同的操作
*/
/* D *object1;//class D中函数D的存在没意义(也许以后能发现存在即合理)
object1=new D;
object1->menberFunction1();//没有传参,若在class的protect中dateMember1~3没有初始值,则不能输出
object1->menberFunction2(123,"object1");
//若是这样实现类的实例化,则对于没有形参的函数,我们必须初始化它里面的变量。
*/
}