2022. 11. 25. 13:33ㆍ개인공부/C++
Data 영역 메인함수 밖에서 사용하는 메모리영역
특징으로는 프록그램 시작시 생성 종료시 해제된다.
분할구현
헤더랑 파일을 구현
해더파일을 생성하고 함수를 선언한다.
다음 cpp파일을 생성하고 아까 구현하지않은 함수를 구현한다.
#include "func.h" 로 해더파일을 불러오는데 이 방법은 복사 붙여넣기이다.
이런 방법으로 분할구현을 하였다.
분할구현을 하는이유?
코드를 손쉽게 관리할 수 있기 때문이다.
분할 구현을 하지않으면 현재 공부하는 내용에서는 코드가 복잡하지 않고 짧지만
실제로 게임구현할때는 한개의 파일에 모든 기능을 집어넣으면 복잡하고 가독성이 좋지않고
구현해둔 함수를 사용할때에도 분할구현을 해두면 편리하게 헤더참조를 통해서 사용할 수 있기 때문이다.
* 하지만 하나의 파일에서 모든기능을 구현하는쪽이 속도는 빠르다.
그후 메인파일에서 "func.h" 파일을 불러와서 함수를 불러왔다.
컴파일 결과 i에 값이 잘 들어간 것을 확인할 수 있었는데 함수는 func.cpp에서 선언되었는데
어떤방식으로 main함수에 와서 작동하는지는 링크 단계에서 가능하다고 하셨지만
아직 cpp 컴파일 작동 순서에대한 이해가 부족하여서 이쪽으로는 공부가 더 필요하다.
분할구현의 문제점
이 과정에서 헤더파일에 왜 함수를 바로 구현하지 않는지?
헤더파일은 복사 붙여넣기 과정으로 만약 헤더파일에 함수를 구현하면 만약 파일이 2개이상일때 똑같은 함수가 두번 선언되어 컴파일 오류를 발생시키기 때문이다.
이런식으로 두번 정의했기 때문에 빌드에 실패한다.
'개인공부 > C++' 카테고리의 다른 글
포인터 변수 / 포인터 배열 (0) | 2022.11.27 |
---|---|
변수 (0) | 2022.11.26 |
배열 , 구조체 (0) | 2022.11.25 |
재귀 함수 (1) (0) | 2022.11.24 |
함수로 Factorial 구현 (0) | 2022.11.23 |