14주차 강의 정리(이경훈) - aksrud/3kingOfGod GitHub Wiki
구조체 이용
프로그램을 만들땐 종속관계가 있는 변수가 있어서 한 단위로 묶어주기 위해서 구조체를 이용한다. (주 목적)
추상화
추상화란 복잡한 구현내용, 알고리즘, 복잡한 자료, 시스템 등등으로 부터 핵심정인 부분만 추출하여 만드는것이다.
crud도 그 중 하나로 볼수 있고 구조체도 이중 하나이다.
쓰는 이유
만약 매개변수가 바뀌거나 구현내용이 바뀌거나 쓰이는 자료구조(여기선 구조체라 생각하면됨)이 바뀔때 추상화를 해놓으지 않으면 어떤 함수에 종속되어 있는 모든 코드를 수정해야 한다. 하지만 추상화를 하면 그에 자세한 내용은 알지 않아도 대표적인 기능만 이용하여 유지보수할때에 원하는 기능만 빠르게 바꿀수 있다. ex.) void PrintSA(StringArray* psa); (안에 StringArray)를 넣으면 출력해주는 함수로 자세한 구조를 알지못해도 쓸수 있음. (그래서 함수이름은 명확하고 알아볼수 있게 적어야함)
꿀팁
구조체도 배열처럼 {0}으로 초기화 가능. c++에선 구조체자체에서 초기화가 가능하지만 C라서 이렇게 초기화 한다.
사용자 정의 자료형 == 구조체