Рефакторинг кода C#?

Как конвертировать этот код:

MYCLASS ebt = new MYCLASS();
ebt.cbStruct = Marshal.SizeOf(ebt);

в это:

MYCLASS ebt = new MYCLASS(cbStruct = Marshal.SizeOf('What comes here?'));

3 ответа

Решение

Вместо этого получите размер шрифта:

MYCLASS ebt = new MYCLASS { cbStruct = Marshal.SizeOf(typeof(MYCLASS)) };

Также обратите внимание на скобки вместо скобок, чтобы использовать синтаксис инициализатора.

Модифицировать ctor MYCLASS,

public MYCLASS()
{
   cbStruct = Marshall.SizeOf(this);
}

Использовать MYCLASS конструктор, который принимает cbStruct параметр.

Другие вопросы по тегам