结构体的定义与初始化是很常用的,特别记录下(感觉书上写的比较实用)
“如果自己重新定义了构造函数,则不能不经过初始化就定义结构体变量,也就是说,默认生成的构造函数“studentInfo(){}”此时被覆盖了。为了既能不初始化就定义结构体变量,又能享受初始化带来的便捷,可以把“studentInfo(){}”手动加上。”
——《算法笔记》
示例代码:
#include <stdio.h>
struct Point{
int x,y;
Point(){}
Point(int _x,int _y){
x = _x;
y = _y;
}
}pt[10];
int main(){
int num = 0;
for(int i = 0;i <= 3;i++){
for(int j = 1;j <= 3;j++){
pt[num++] = Point(i,j);
}
}
for(int i = 0;i <num;i++){
printf("%d,%d\n",pt[i].x,pt[i].y);
}
return 0;
}