구조체를 쓰는 이유가 뭔가요?
구조체와 클래스의 차이나 문법적인 부분만 설명하지만
구조체는 왜 쓰는지에 대해서는 알려주지 않네요.
그냥 구조체 말고 배열을 쓰면 되는 것 같은데
구조체를 써야 하는 이유가 있나요?
예시를 들어주시면 감사하겠습니다.
안녕하세요. A-HA 프로그래밍 전문가입니다.
다양한 정보를 하나의 객체에 담기 위해 구조체를 사용합니다.
단순하게 문자열이나 숫자 값을 저장하려면 배열로 저장을 해도 되지만, 만약 사람의 키와 몸무게 나이 등 다양한 정보를 함꼐 저장 해야 된다면 배열로는 할 수 없죠.
그래서 보통 구조체를 만들어 리스트로 관리를 합니다.
안녕하세요
왜 배열을 안쓰고 구조체를 사용하냐고 물어보셨는데요.
배열은 동일한 정보를 여러개 가지고 있을때 , 구조체는 다양한 변수를 가질때 사용합니다.
예를 들어 10명의 학생의 나이를 다루고 싶으면
나이[10] 이렇게 선언하면 되고
학생의 신상정보를 다루고 싶으면 구조체로 하는거죠
학생이라는 구조체에 나이, 이름, 성별을 넣는것입니다.
나이는 UINT8로 관리하고 이름 같은 경우는 다른 변수로 관리해야하기 때문에 구조체를 사용하는 것입니다.
구조체는 하나의 구조체변수로 여러가지의 정보를 담고 처리할수 있다고생각하시면될것같습니다.
말씀하시는 배열은 int a[5]같은 일반 변수의 배열을의미하시는것같은데요. 이것으로는한가지의 정보만 여러 인덱스에 걸쳐 담고 처리할수 있는 반면, 구조체는 여러가지정보를 한 꾸러미로 묶어 처리할수있다고 생각하시면됩니다.
참고로 구조체도 배열로사용할수 있습니다.
안녕하세요. 4년차 fw 개발자 입니다.
배열과 구조체는 생김세며 쓰임세며 완전히 다른 존재입니다.
우선 구조체와 클래스는 제가 원하는 대로 변수의 타입을 정할 수 있습니다.
사람이라는 클래스가 있다면 이 사람의 대한 정보는 이름(string) 나이(integer) 키(double) 등등의 여러 정보를 가지고 있습니다.
이 여러 타입의 정보를 배열안에 저장 한다는것은 불가능하기에 직접 구조체와 클래스를 선언해서 사용 하는것이지요
안녕하세요.
현직 머신러닝 / 딥러닝 연구 개발자입니다.
단순히 배열을 사용하기에는 어떠한 개체가 가지고 있는 특징을 포함하기 어렵습니다.
구조체의 경우 하나의 개체의 특징을 개체 내에 포함할 수 있기에 더 많이 사용됩니다.
물론 배열을 통해 사용할 수 있지만 구조체가 더 편하기에 사용됩니다.
답변이 마음에 드셨으면 채택을 해주시면 감사하겠습니다.