1 C++成员变量初始化
#include<iostream>
#include <string.h>
using namespace std;
struct Student{
int id=1001; //成员变量或对象
char name[64]="zhangsan";
int age=20;
int score=99;
};//end class Student
int main()
{
// Student stu={1001,"zhangsan",20,99};
Student stu1;
cout<<stu1.name<<endl;
return 0;
}
2 C++ 构造函数
#include<iostream>
#include <string.h>
using namespace std;
struct Student{
int id=1001; //成员变量或对象
char name[64];//="zhangsan";
int age=20;
int score=99;
//构造函数的名字和该类的名字相同;
//构造函数没有返回值,连void都不用;
//构造函数可以重载
//可以有默认构造函数:如果程序员没有定义任何构造函数,那么系统会定义个默认构造函数,被叫做合成构造函数
//如果程序员定义了带参数的构造函数,那么系统就不再定义合成构造函数;如果程序员还有需要,那么必须自己定义
#if 1
Student(){cout<<"student default construction!"<<endl;}
Student(int i,const char*n, int a,int s){
id=i;strcpy(name,n);age=a;score=s;
}
Student(int i,const char*n, int a){
id=i;strcpy(name,n);age=a;
}
#endif
};//end class Student
int main()
{
// Student stu={1001,"zhangsan",20,99};
Student stu1(1002,"lisi",20);
// Student stu;
// cout<<stu1.name<<endl;
return 0;
}