구조체의 구조 함수

2061 단어 구조 함수
node k = node(args1,args2...argsN)와 같은 방식으로 하나의 구조체를 초기화하고 싶었는데 많은 부분의 코드를 간소화할 수 있다. 처음에는 어떻게 쓰는지 몰랐는데 나중에 사람들에게 물어보면 다음과 같은 코드를 정리할 수 있다.
struct Point

{

    int x,y;

    Point(int _x_,int _y_)

    {

        x = _x_;

        y = _y_;

    }

    Point(){}

};

여기에 두 개의 Point 구조 함수가 있음을 주의하십시오.
첫 번째 리본 매개변수x_,_y_의 구조 함수는 우리로 하여금
Point k = Point(1,2);

를 사용하여 Point 객체를 새로 만듭니다.
두 번째 파라미터가 없는 Point 구조 함수는 초기화되지 않은 새로운 Point 변수를 만들 수 있습니다.즉
Point k;       Point *k;       Point k[N];

 
이 방법은 그래도 이렇게 할 수 있다.
struct Point

{

    int x,y;

    Point(int a=0,int b=0)

    {

        x = a;

        y = b;

    }

};

 
a=0, b=0은 미리 설정한 기본값입니다. 기본값을 스스로 설정할 수 있습니다. 그러면 Point() {}를 쓰지 않고 두 가지 작업을 할 수 있습니다.
 
이렇게 할 수도 있다.
struct node

{

    int x,y;

    node(int _x,int _y):x(_x),y(_y){}

    node(){}

};

좋은 웹페이지 즐겨찾기