일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Windows 10
- 영상처리
- 딥러닝
- OpenCV
- 코딩
- c
- python
- error
- 운영체제
- TensorFlow
- 텐서플로우
- C++
- 시스템프로그래밍
- 백준
- 턱걸이
- 쉘
- Computer Vision
- 공부
- 학습
- 프로그래밍
- Windows10
- shell
- 알고리즘
- CV
- 프로세스
- 리눅스
- 회귀
- linux
- C언어
- 백준알고리즘
- Today
- Total
목록헤더 (2)
줘이리의 인생적기

헤더가드에 대해서 알아보겠습니다. #pragma once 이것을 왜 ? 언제 ? 쓰는 걸까요? 헤더파일이 여러 개다 보면 include를 여러 번 쓰게 되는 경우가 있습니다. 헤더파일에 있는 함수들을 여러 번 선언하고 여러번 정의한거라 빌드에러가 발생합니다. 이때 같은 include를 여러번 써도 괜찮게 만들어 주는 것이 pragma once입니다. 몇 가지 경우의 수로 알아보겠습니다. 헤더파일 2개와 메인파일 1개로 경우의 수를 만들어보겠습니다. 빌드가 될지 생각하면서 내려가 보겠습니다. 빌드가 됩니다. 빌드가 됩니다. 빌드가 됩니다. 빌드 안됩니다. 빌드가 됩니다. 어느 정도 감이 잡히셨나요? visual studio에서는 헤더파일을 만들면 자동으로 #pragma once가 입력이 되어 있으니 편하게..

헤더 파일은 (.h)의 확장자를 가지며, 함수의 선언 부분을 가지고 있습니다. 다른 cpp 파일에서 함수를 정의하고, main에서 함수들을 사용합니다. 역시나 동일한 예제를 가지고 헤더파일로 분리해보겠습니다. 헤더파일 1개, add 함수 cpp 파일 1개, multi 함수 cpp 파일 1개, main 함수 1개 총 4개의 파일을 만들어 보겠습니다. operating.h #pragma once int add(int a, int b); double multi(double a, double b); add.cpp int add(int a, int b) { return a + b; } multi.cpp double multi(double a, double b) { return a * b; } main.cpp #i..