Ошибка компилятора C3222Compiler Error C3222

"parameter": нельзя объявить аргументы по умолчанию для функций-членов управляемого типа, типа WinRT или универсальных функций'parameter' : cannot declare default arguments for member functions of a managed or WinRT type or generic functions

Запрещено объявлять параметр метода с аргументом по умолчанию.It is not permitted to declare a method parameter with a default argument. Перегруженные формы метода — один из способов решения этой проблемы.An overloaded form of the method is one way to work around this issue. То есть вам нужно определить метод с тем же именем без параметров и затем инициализировать переменную в теле метода.That is, define a method with the same name with no parameters and then initialize the variable in the method body.

Следующий пример приводит к возникновению ошибки C3222:The following sample generates C3222:

// C3222_2.cpp
// compile with: /clr
public ref class G {
   void f( int n = 0 );   // C3222
};