C++ - 함수의 디폴트 인자 값을 동적으로 바꾸기
일반적인 함수의 기본 인자 값
void TEST_1(int nValue = 5 )
{
std::cout << __FUNCTION__ << ". " << nValue << std::endl;
}
위의 디폴트 값은 고정인데 아래처럼 동적으로 바꿀 수 있다.
#include <iostream>
#include <time.h>
int GetNumber()
{
return (int)time(NULL);
}
void TEST_2(int nValue = GetNumber() )
{
std::cout << __FUNCTION__ << ". " << nValue << std::endl;
}
int main()
{
TEST_2();
return 0;
}
#include <iostream>
#include <time.h>
void TEST_1(int nValue = 5 )
{
std::cout << __FUNCTION__ << ". " << nValue << std::endl;
}
int GetNumber()
{
return (int)time(NULL);
}
void TEST_2(int nValue = GetNumber() )
{
std::cout << __FUNCTION__ << ". " << nValue << std::endl;
}
int g_nValue = 0;
void TEST_3( int nValue = (
g_nValue = GetNumber(),
g_nValue+1) )
{
std::cout << __FUNCTION__ << ". " << nValue << std::endl;
}
int main()
{
TEST_1();
TEST_2();
_sleep(1000);
TEST_2();
TEST_3();
return 0;
}
이 글은 2020-07-07에 작성되었습니다.