Udostępnij za pośrednictwem


Błąd kompilatora C2139

"type" : niezdefiniowana klasa nie jest dozwolona jako argument funkcji typu wewnętrznego kompilatora "cecha"

Nieprawidłowy argument został przekazany do cechy typu.

Uwagi

Aby uzyskać więcej informacji, zobacz Obsługa kompilatora dla cech typów.

Przykład

Poniższy przykład generuje kod C2139.

// C2139.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;

template <class T>
struct is_polymorphic {
   static const bool value = __is_polymorphic(T);
};

class C;
class D {};

class E {
public:
   virtual void Test() {}
};

int main() {
   cout << is_polymorphic<C>::value << endl;   // C2139
   cout << is_polymorphic<D>::value << endl;   // OK
   cout << is_polymorphic<E>::value << endl;   // OK
}