c++ 함수에서는 디폴트 값을 설정할 수 있다고 한다.

(c++라고 언급한거 보니 c는 안되는듯? 확인은 나중에..)


[code]

int MyFuncOne(int num=7){

return num+1;

}

[/code]

이런 코드가 있으면 다음과 같이 함수 호출 할 때

MyFuncOne();

num에는 7에 들어간다.


함수 선언을 사용 하는 경우 함수 선언부에만 디폴트 값을 표현해주면 사용 가능.


부분적으로 디폴트 값을 설정할 때에는 가장 우측 변수부터 디폴트 값이 설정 되어야 한다.-> 함수 호출시 매개변수가 왼쪽에서부터 채워지게 되고 나머지는 디폴트값을 사용하기 때문


[code]

#include <iostream>


int BoxVolume(int length, int width = 1, int height = 1);


int main(void)

{

std::cout << "[3, 3, 3] : " << BoxVolume(3, 3, 3) << std::endl;

std::cout << "[5, 5, D] : " << BoxVolume(5, 5) << std::endl;

std::cout << "[7, D, D] : " << BoxVolume(7) << std::endl;

// std::cout << "[D, D, D] : " << BoxVolume(3, 3, 3) << std::endl; compile error!

return 0;

}


int BoxVolume(int length, int width, int height) {

return length*width*height;

}

[/code]


결과 화면


'코딩,문제풀이 > cpp' 카테고리의 다른 글

namespace 별칭  (0) 2017.01.01
열혈강의 c++ p.32  (0) 2017.01.01
열혈강의 c++ p.26  (0) 2017.01.01
함수 오버로딩(Function Overloading)  (0) 2017.01.01
열혈강의c++ p.22  (0) 2017.01.01

+ Recent posts