본문 바로가기
728x90

Computer Science/C & C++3

[C++] 인라인(inline) 함수 인라인(inline) 함수는 무엇일까 inline함수는 in line, 프로그램 코드 라인 안에 있는 함수라는 뜻이다. 아래 함수를 한번 보자. #include using namespace std; inline int ADD(int a) { return a+1; } int main() { cout 2021. 7. 6.
[C++] 매개변수 디폴트 값 (Default Value) C++에서는 함수에서 Default값이라는 것을 설정할 수 있다. int func(int a=1)//함수 호출 시 인자를 전달하지 않으면 1이 전달된 것으로 인지 { return a+1; } 따라서 이런 경우는 아래의 경우 같은 함수가 불린 것처럼 동작하게 된다. func();//1이 전달된 것과 같다. func(1); 그렇다면 아래와 같은 경우는 어떻게 동작할까? int func(int a, int b=1, int c=2) { a = a+b+c; return a; } func(0); //func(0,1,2) func(0,5); //func(0,5,2) func(0,5,5); //func(0,5,5) 위처럼 매개변수의 디폴트 값이 설정된 경우 선언된 매개변수보다 적은 매개변수를 넣고도 함수 수행이 가능하.. 2021. 7. 6.
[C++] 함수 오버로딩 (Function Overloading) 함수 오버로딩(Function Overloading이란?) C언어에서는 동일한 이름의 함수가 정의되면 Complie error를 발생시키게 된다. int Func_A(int a) { a = a + 1; return a; } int Func_A(int a, int b) { a = a + b; return a; } 하지만 위와 같은 함수의 경우 두가지가 모두 선언되어도 문제가 없을 것이다. 역할이 다르기 때문이다. int main() { Func_A(10); //Func_A(int a) 가 호출된다. Func_A(10, 20);//Func_A(int a, int b) 가 호출된다. return 0; } 위처럼 구분되어 사용될 수 있기 때문에 같은 이름의 함수를 선언하여 Parameter를 다르게 선언할 수 .. 2021. 7. 6.
반응형