반응형
#include <iostream>
// 함수를 함수를 지시하는 포인터변수로 호출하는 예
using namespace std;
double gildong(int lns){
return 0.05 * lns;
}
double moonsoo(int lns){
return 0.03 * lns + 0.0004 * lns * lns;
}
void estimate(int lines, double (*pf)(int)){ //함수를 가리키는 포인터 변수를 인자로 넘겼다
// double형을 리턴하는 함수를 가리키는 포인터임. 이 포인터변수나 (*포인터변수)나 같은 기능을 한다.
// 즉, (*pf)(lines) == pf(lines) 같다. 그래서 2번 실행 해보겠음.
cout << lines << "행을 실행하는데 ";
cout << (*pf)(lines) << "시간이 걸립니다\n"; // 전자
cout << pf(lines) << "시간이 걸립니다\n"; // 후자
}
int main()
{
int code;
cout << "필요한 코드의 행 수를 입력 : ";
cin >> code;
cout << "길동의 예상시간\n";
estimate(code, gildong);
cout << "문수의 예상시간\n";
estimate(code, moonsoo);
return 0;
}
반응형
'I.T > Programming' 카테고리의 다른 글
unexpected end of file while looking for precompiled header directive : compile error (0) | 2011.04.21 |
---|---|
함수오버로딩, 디폴트인자, 함수템플릿 (0) | 2011.04.08 |
참조 전달 인자 '&' (0) | 2011.04.08 |
const (0) | 2011.04.08 |
new 와 delete 함수 (0) | 2011.04.08 |