인프런 커뮤니티 질문&답변
코딩이 오류가 납니다 ㅜㅜ
작성
·
225
0
안녕하세요! 코딩하다가 오류가 해결이 안돼 질문 남깁니다.
#include <iostream>
using namespace std;
int add(int x, int y)
{
return x + y;
}
int subtract(int x, int y)
{
return x - y;
}
int multiply(int x, int y)
{
return x * y;
}
int main()
{
int x, y;
cin >> x >> y;
int op;
cout << "0: add, 1: subtract, 2:multiply" << endl;
cin >> op;
//1. static binding (early binding)
/*int result;
switch (op)
{
case 0:
result = add(x, y);
break;
case 1:
result = subtract(x, y);
break;
case 2:
result = multiply(x, y);
break;
}
cout << result << endl;
*/
//2. Dynamic binding (late binding)
//함수의 포인터를 정의 하고, switch문으로 함수의 포인터에 함수를 직접 넣어준다.
int(*func_ptr)(int, int) = nullptr;
switch (op)
{
case 0:
func_ptr = add; break;
case 1:
func_ptr = subtract; break;
case 2:
func_ptr = multiply; break;
}
cout << func_ptr(x, y) << endl;
return 0;
}
이렇게 코딩했는데, exception thrown 이라는 오류가 나오네요.. 구글링해봤는데 이부분에 대한 설명은 잘 안나온 것 같아서요! 혹시 어떤부분이 잘못됐는지 알려주실 수 있나요?
답변 1
0
안녕하세요.
질문 주신 코드 그대로 복사 붙여넣기 해서 실행해보았는데 저는 아무 에러도 뜨지 않습니다..!
에러 화면과 어떤 입력값을 넣으셨엇는지 이런 구체적인 정보를 알려주실 수 있을까요?





