반응형
함수 포인터 배열
- 함수 포인터 배열은 함수 포인터를 선언할 때 함수 포인터 이름 뒤에 [ ] 대괄호 안에 배열의 크기를 지정하면 된다
반환값자료형 (*함수포인터 이름)[크기](매개변수자료형1, 매개변수자료형2);
선언 예제
int (*functionPointers[])(int, int)
전체 코드 예제
#include <iostream>
// 덧셈 함수
int add(int a, int b) {
return a + b;
}
// 뺄셈 함수
int subtract(int a, int b) {
return a - b;
}
// 곱셈 함수
int multiply(int a, int b) {
return a * b;
}
int main() {
// 함수 포인터 배열 선언 및 초기화
int (*functionPointers[])(int, int) = { add, subtract, multiply };
int a = 10;
int b = 5;
// 함수 포인터 배열을 사용하여 각 함수 호출
for (int i = 0; i < 3; ++i) {
int result = functionPointers[i](a, b);
switch (i) {
case 0:
std::cout << "Addition result: " << result << std::endl;
break;
case 1:
std::cout << "Subtraction result: " << result << std::endl;
break;
case 2:
std::cout << "Multiplication result: " << result << std::endl;
break;
default:
break;
}
}
return 0;
}
결과
jaeyojun@c2r10s5 C++ % ./a.out
Addition result: 15
Subtraction result: 5
Multiplication result: 50
반응형