使用构造函数初始化结构体

这点还是蛮实用的,不用反复定义临时变量,get~记得在图那一块存图的信息就用到了

Point(){}; 不必声明临时的结构体节点变量
Point(int _x,int _y):x(_x),y(_y) {} 不必单独地赋值x,y

代码:

#include <stdio.h>

struct Point{
    
    
	int x,y;
	Point(){
    
    };     //用以不经初始化定义pt[10] 
	Point(int _x,int _y):x(_x),y(_y) {
    
    }   //用以提供x和y的初始化  
	//Point(int a,int b):x(a),y(b) {}  写成这样也可以,只要对应相同就可 
}pt[10];

int main(){
    
    
	int num = 0;
	for(int i = 1;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;
}

猜你喜欢

转载自blog.csdn.net/weixin_42377217/article/details/104365949