일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 오블완
- LG Aimers 4th
- deep learning
- 지도학습
- Classification
- LLM
- regression
- 티스토리챌린지
- supervised learning
- LG Aimers
- OpenAI
- 분류
- ChatGPT
- 머신러닝
- gpt
- LG
- 회귀
- AI
- GPT-4
- Machine Learning
- PCA
- 딥러닝
- 해커톤
Archives
- Today
- Total
SYDev
C++ Chapter 01-4 : 인라인(inline) 함수 본문
C++ 기반의 인라인 함수 정의
C언어에서의 매크로 함수의 장점과 단점은 다음과 같다.
- 장점 : 일반적인 함수에 비해서 함수 호출 속도가 빠르다.
- 단점 : 복잡한 함수를 정의하기가 힘들다.
이런 매크로함수의 장점은 가져오고 단점을 보완한 것이 C++에서의 인라인 함수이다.
인라인 함수는 내부에서 작성된 코드이기 때문에 호출속도가 일반 함수에 비해 빠르고, 일반 함수의 형태로 정의하기 때문에 복잡한 내용의 함수도 정의하기에 어려움이 없다.
(인라인 함수는 매크로 함수와 다르게 자료형에 따라 데이터 손실이 발생한다는 단점이 있다. 이를 C++에서 보완하는 방법은 나중에 알아보자.)
인라인 함수를 정의하는 아래 예제를 살펴보자.
#include <iostream>
inline int SQUARE(int x)
{
return x*x;
}
int main(void)
{
std::cout<<SQUARE(3)<<std::endl;
std::cout<<SQUARE(5)<<std::endl;
return 0;
}
9
25
3행에서처럼 키워드 inline을 통해서 인라인 함수를 간단히 정의할 수 있다.
출처 : 윤성우, <윤성우의 열혈 C++ 프로그래밍>, 오렌지미디어, 2010.05.12
'Programming Lang > C++' 카테고리의 다른 글
C++ Chapter 01-5 : 이름공간(namespace) (2) (0) | 2023.07.05 |
---|---|
C++ Chapter 01-5 : 이름공간(namespace) (1) (0) | 2023.07.05 |
C++ Chapter 01-3 : 매개변수의 디폴트 값(Default Value) (0) | 2023.07.03 |
C++ Chapter 01-2 : 함수 오버로딩(Function Overloading) (0) | 2023.07.03 |
C++ Chapter 01-1 : printff와 scanf를 대신하는 입출력 방식 (0) | 2023.07.03 |