私はfoo.libを生成する以下のプロジェクトを持っています。libファイルのC++グローバルクラスコンストラクタ
//foo.h:
class A
{
public:
A();
static A* i;
};
//foo.cpp:
A* i = 0;
A g_A_instance;
A::A()
{
//this constructor is not called :(
i = this;
}
別のプロジェクトで、foo.libとリンクするexeファイルを生成しています。コンストラクタA :: A()は呼び出されていないようです。どのように私はこの作品を作ることができます、私は行方不明のいくつかのコンパイラオプションはありますか?
PS:私は、Visual Studioコンパイラ2008を使用
おかげで、 Raxvan。
あなたはそのことを何と呼んでいないのですか?エラーが発生していますか?それをインスタンス化するためのexeファイルにはどのようなコードがありますか? – StevieG
私はブレークポイントを持っており、コンストラクタにはprintfがありません。また、それらのどれもが動作していません。また、コードが静的変数を実行すると、NULLはすべてNULLになります – Raxvan