这部分的知识和java的类很相似
构造函数是一种用来初始化结构体的函数,特点是不需要写返回类型,函数名与结构体名相同。
定义一个结构体之后,系统会生成一个默认的构造函数(但不可见),我们也可以手动创建构造函数,对应不同的初始化方式
示例程序
#include<stdio.h>
struct studentInfo
{
int id;
char gender;
//默认构造函数
studentInfo(){}
//只初始化gender
studentInfo(char _gender) {
gender = _gender;
}
//初始化id和gender
studentInfo(int _id, char _gender) {
id = _id;
gender = _gender;
}
};
int main()
{
studentInfo a('m');
studentInfo b(123, 'f');
printf("a.id=%d,a.gender=%c\n",a.id, a.gender);
printf("b.id=%d,b.gender=%c\n", b.id, b.gender);
return 0;
}
输出