アンマネージドクラスをnewできない


HT  2005-12-25 23:02:36  No: 60054  IP: [192.*.*.*]

VC++ .NET2003で、.NETクラスライブラリを作成しています。

マネージドクラス内でアンマネージドクラス(__nogc)をnewすると、なぜかリンクエラーになります。operator newが見つからないと出ます。

Formアプリの場合は、問題なくnewできます。
クラスライブラリの場合、なにかオプション設定が必要なのでしょうか?

編集 削除
Blue  2005-12-25 23:44:06  No: 60055  IP: [192.*.*.*]

具体的にどのように宣言して、どうnewしているのか書かれた方が良いです。

一応
C++: マネージ拡張リファレンス  __nogc
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vcmex/html/vclrf__nogc.asp

明示的に new のまえに __nogc を付けてみるとか。

編集 削除
HT  2005-12-26 22:05:55  No: 60056  IP: [192.*.*.*]

明示的__nogcを付けてみましたが、リンカエラーは出たままです。
Formアプリで動いていたものを、クラスライブラリに移しただけなんですが・・・

 namespace Test
{
   __nogc class NoGCClass
    {
    public:
        void Test() {}
    };

    public __gc class GCClass
    {
    public:
        void Test()
        {
            NoGCClass* p = __nogc new NoGCClass();
            p->Test();
        }
    };
}


ひょっとしたら、これが関係するのかも。
混合モードってなんだ?
クラスライブラリの場合だけ、ナゼこんな・・・
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vcmex/html/vclrf__nogc.asp

編集 削除
HT  2005-12-26 22:15:15  No: 60057  IP: [192.*.*.*]

リンク先が間違ってました。
http://www.microsoft.com/japan/msdn/library/ja/vcmex/html/vcconclasslibrarytemplate.asp

クラスライブラリはCRTにリンクされない、とあるので、
関係あるかも・・・

編集 削除