[C++] 인라인 함수

C++ 2019. 12. 6. 17:07

#include
using namespace std;

inline int aa(int x){
return x*x;
}

int main(){
cout << aa(5) << endl;
return 0;
}

// 함수를 inline으로 선언하면 aa(5) 부분은 aa(x*x)가 되어버린다.
// 함수를 호출하는 절차없이 그 내용을 복사해서 넣기 때문에 일반함수보다 실행속도가 빠르다.
// 대신 프로그램 용량이 커진다.
// aa(1.5)같은 부동소수점을 넣으면 손실이 발생할까? - 발생한다.
// 대처방법은 자료형이 자유로운 템플릿을 써준다.

#include
using namespace std;
template // 템플릿 선언
inline T aa(T x){ // 함수 내 모든 자료형을 템플릿으로 바꿔줌
return x*x;
}

int main(){
cout << aa(5) << endl;
cout << aa(3.1) << endl;
return 0;
}

'C++' 카테고리의 다른 글

[C++] 파일분할 방법  (0) 2019.12.06
[C++] 이름공간  (0) 2019.12.06
[C++] 디폴트값 의미  (0) 2019.12.06
[C++] 함수 오버로딩  (0) 2019.12.06
[C++] dll 연결 방법  (0) 2019.12.06
블로그 이미지

ryancha9

https://blog.naver.com/7246lsy

,