私はこれに従いますexample。しかし、私は、コンパイル時に、それはエラーを返します:ラインで非静的メンバー関数の無効な使用C++
Invalid use of non-static member function
void(Machine:: *ptrs[])() =
{
Machine::off, Machine::on
};
私は
クラスでvoid on();
に
class Machine
{
class State *current;
public:
Machine();
void setCurrent(State *s)
{
current = s;
}
static void on(); // I add static here ...
static void off(); // and here
};
をstatic
を追加しようとしました。しかし、それは
Invalid use of member Machine::current in static member function
これを解決する手助けができますか?
Ah、oui。それは動作しますが、理由を説明できますか?ありがとうございました – GAVD
@GAVD説明が追加されました。 – songyuanyao
@songyuanyao pcapライブラリのpcap_loop()も同様のエラーをスローします。あなたはこれを見て、何か考えているかどうか教えてください。 Tqvm 0http://stackoverflow.com/questions/43108998/c-pcap-loop-arguments-issue – Wei