0
I가 (헤더 파일)이 다음 구조체 :매개 변수로 작동하는
struct StateTransitions {
State currentState;
State nextState;
void (*fn)();
StateTransitions (State currentState, State nextState, void (*fn)())
{
}
};
그리고 내부 (벡터로이 구조체의 일부 인스턴스를 밀어하려고 .cpp 파일) :
void MyClass::Start()
{
}
transitions.push_back(StateTransitions(Low, Started, &MyClass::Start));
이 컴파일 할 수 없습니다. 클래스 내의 생성자에 대한 내 선언이 정확한지 확실하지 않습니다.
생성자를 추가하는 올바른 방법은 무엇입니까? 따라서이 유형의 객체를 벡터에 추가 할 수 없습니까?
전 C++ 11을 사용하고 있습니다.
함수 포인터와 멤버 함수 포인터가 다릅니다. 'void (MyClass :: *)()'를 원할 수도 있습니다. – songyuanyao
컴파일러 오류를 포함해야합니다. – szym
@songyuanyao : 네가 맞아, 혼란스러워. 이것은 지금 구축하는 것 같습니다. – Kobe