구조체는 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).height
와 ptr->weight
는 같은 의미이다.
->
에 *
포인터의 의미가 포함되어있기 때문이다.