Возможный дубликат:
Нельзя использовать это в инициализаторе члена?
Любые идеи, почему я получаю сообщение об ошибке, если я попытаюсь сделать что-то вроде этого:
public class Bar
{
public Bar(Foo foo)
{
}
}
public class Foo
{
private Bar _bar = new Bar(this);
}
Я получаю сообщение об ошибке:
"Невозможно использовать 'this' в инициализаторе элемента"
но следующие работы:
public class Foo
{
private Bar _bar;
public Foo()
{
_bar = new Bar(this);
}
}
Кто-нибудь знает причину этого? Мое понимание заключалось в том, что они скомпилировались бы с тем же ИЛ, поэтому любопытно, почему один разрешен, а другой нет.
Спасибо, Alex