0

多分あなたは知っているでしょう、私はエラーを受け取ります:

 error C2440: 'initializing' : cannot convert from 'int' 
              Conversion from integral type to pointer type requires reinterpret_cast

'MS VS 2010 フォルダー内のファイルに移動します。

template<class _Other1,
        class _Other2>
        _Pair_base(_Other1&& _Val1, _Other2&& _Val2)
        : first(_STD forward<_Other1>(_Val1)),
            second(_STD forward<_Other2>(_Val2))
        {   // construct from moved values
        }

さまざまな解決策を探していましたが、正しい解決策が見つかりませんでした。

4

1 に答える 1

1

エラーは言う

'initializing' : cannot convert from 'int' to 'EnterFunctor *'

あなたが共有するコードの唯一の部分は

functors.push_back(make_pair(sessionStartFunc, 
    pair<EnterFunctor*, ExitFunctor*>(NULL,sessionStartExit)));

NULLis #defined as 0 の場合、これは a を提供しますintが、ポインターの a を約束したpairため、エラーの次の行に、キャストを使用しNULLて正しい型のポインターを作成できることが示されています。

于 2013-10-22T09:19:17.387 に答える