编译器错误 C3279

不允许对在 cli 命名空间中声明的类模板进行部分专用化、显式专用化和显式实例化

cli 命名空间由 Microsoft 定义并包含伪模板。 Microsoft C++ 编译器不允许对此命名空间中的类模板进行用户定义、部分和显式专用化,以及显式实例化。

以下示例生成 C3279:

// C3279.cpp
// compile with: /clr
namespace cli {
   template <> ref class array<int> {};   // C3279
   template <typename T> ref class array<T, 2> {};   // C3279
}