Поделиться через


Ошибка компилятора C3828

"тип объекта": аргументы размещения не разрешены при создании экземпляров управляемых или WinRTclasses

Замечания

При создании объекта управляемого типа или типа среда выполнения Windows нельзя использовать форму размещения оператора ref new, gcnew или new.

Example

В следующем примере создается C3828 и показано, как исправить его:

// C3828a.cpp
// compile with: /clr
ref struct M {
};

ref struct N {
   static array<char>^ bytes = gcnew array<char>(256);
};

int main() {
   M ^m1 = new (&N::bytes) M();   // C3828
   // The following line fixes the error.
   // M ^m1 = gcnew M();
}