基元类型在c ++和CLI之间传递模板参数

Yoc*_*mer 2 templates c++-cli

我有一个c ++模板类:

template<class T>
class A {
    void test (T temp) { }
};
Run Code Online (Sandbox Code Playgroud)

但我需要将它包装在CLI中,以便可以在c#中使用它.

例:

CLI:

template<class T>
ref class AWrap {
     private:
        A* a;
     public:
        void test (T temp) { 
           a->test<T>(temp);
        }
};
Run Code Online (Sandbox Code Playgroud)

C#:

Awrap blah = new AWrap();
blah<int>(3);
Run Code Online (Sandbox Code Playgroud)

如果我创建一个模板化的CLI ref class,它调用模板化的c ++方法,原始类型是否会在编译时生成正确的c ++模板化代码? - >

Dan*_*ger 6

您在C#中使用的是泛型,而不是模板.没有办法专门化C#中的C++/CLI模板.