c++ 구조체

강효림·2023년 5월 15일
0

c++

목록 보기
4/8

구조체

구조체는 struct를 사용해 선언하고 옆에 구조체명을 적는다.
구조체 안에서는 변수 선언만 한다.

struct Student {
	int number;
    string name;
    string adress;
};

구조체에서 선언한 변수들은 메인함수 안에서 초기화를 시킨다.

int main(){
	struct Student infor;
	infor.number = 1111;
	infor.name = "강효림";
	infor.adress = "서울";
}

클래스

구조체를 단순 선언하는 것 보다 여러 데이터들을 하나의 의미있는 구조체로 묶어서 관리하는 것이 좋다.
구조체 클래스는 일반적으로 단어의 첫글자를 대문자로 한다.

class Student{
public:
	int number;
    string name;
    string adress;
};

클래스를 선언하고 구조체와 같이 메인 함수 안에 변수들을 초기화 시켜준다.

int main(){
	class Student infor;
	infor.number = 1111;
	infor.name = "강효림";
	infor.adress = "서울";
}

클래스는 멤버함수를 가질 수 있어서 클래스 안에 기능을 추가할 수 있다.
학생정보를 클래스에서 출력하고 싶을 때 print() 함수를 만들면 된다.

class Student{
public:
	int number;
    string name;
    string adress;
    
    void print(){
    	cout<<number<<endl;
        cout<<name<<endl;
        cout<<adress<<endl;
     }
};

메인에서 infor.print(); 코드를 넣어 실행시켜주면 된다.
반드시 초기화 한 후 넣어줘야 한다.

구조체를 가리키는 포인터

struct Person{
	int height;
    int weight;
};

int main(){
	struct Person p;
    p.height=180;
    p.weight=77;
    
    struct Person* ptr = &p;
    cout<<(*ptr).height<<endl;
    cout<<ptr->weight<<endl;

포인터로 구조체를 가리켜 출력한다.
(*ptr).heightptr->weight 는 같은 의미이다.
->* 포인터의 의미가 포함되어있기 때문이다.

0개의 댓글