함수에 대한 포인터를 벡터 보류 상태로 만들려고합니다. 포인터는 나중에 secuentially라고합니다.
그래서 세 가지 기능이 있다고 가정 해 보겠습니다. int a()
, void b();
는 bool c();
void 포인터를 함수의 형식과 함께 저장하려고합니다.
내 벡터 vector<void *> vec;
그리고 함수에 대한 포인터를 저장 내 기능입니다. 모든 기능이 저장 호출 할 때 그들은 모두 무효 포인터이기 때문에
void registerFunction(void *func)
{
vec.push_back(func);
}
이제 내 문제는 내가 그들의 유형을 모른 채 함수를 호출 할 수있다.
그래서 내 질문은 ... 내가 기호를 저장할 수있는 방법이있다 그래서 그들 각각의 포인터를 관련시킬 수있는 다음 함수에 void 포인터를 호출 할 때 형 변환?
주 : 함수는 항상 예를 들어, void (*)()
, 나는 따라서, 또한 예를 방법을 추가 할 것이다 유형이 될 수 없습니다. void (someclass::)()
. 너무 많은 것을 요구하고 있습니까? 작동해야합니까?
"기능에 대한 void 포인터"- 말단의 모순. (당신이 할 수있는 대부분의 메모리 주소에 해당하는,하지만 그때 당신은 C + + 사양을 떠난 것입니다) – sehe