아래는 동적으로 기능 핑을 참조해야전달 문자열 포인터 C++
#include "stdafx.h"
#include <string.h>
#include <iostream.h>
using namespace std;
class ToDoCommands
{
public:
void getCommand(string);
};
void ToDoCommands::getCommand(string command)
{
cout<<command; //here i get ping
void (*CommandToCall)(void);
CommandToCall = command; // error here i want something like
// CommandToCall = ping
CommandToCall();
}
void ping(void)
{
cout<<"ping command executed";
}
int main()
{
ToDoCommands obj;
obj.getCommand("ping");
}
함수 포인터 내 코드를 작동합니다. 함수 이름과 동일한 문자열이 main의 getCommand 함수에 전달됩니다.
C++ 만하지 않습니다 시도 : 당신은 정말 뭔가를해야 할 경우, 당신은 이름으로 색인 기능의 테이블을해야합니다 그런 식으로 일해라. 이와 같은 것을 정말로 필요로한다면 이름으로 색인 된 함수 테이블을 만들어야 할 것입니다. –