-1

次のコードがあります。

#include <windows.h>
class systemfunctions
{
    public:
    void (*sleep) (DWORD ms);

    systemfunctions ()
    {
        sleep = reinterpret_cast<void>(Sleep);
    }
} sys;

を呼び出すsys.sleep()と、アプリケーションがクラッシュします。プログラムがクラッシュするのはなぜですか? また、問題を解決するにはどうすればよいですか?

4

2 に答える 2

1

関数ポインターをキャストする必要があるのは、 からの戻り値を使用するときだけですGetProcAddress

キャストを取り除くと、コンパイラが何が問題なのかを教えてくれます。

于 2013-11-01T18:13:18.700 に答える