Этот код компилируется успешно, но я думаю, что он не должен компилироваться. Кроме того, при его запуске вы получаете исключение NullReferenceException. Отсутствующий код — это «новый бар» в инициализации свойства Bar.
class Bar
{
public string Name { get; set; }
}
class Foo
{
public Bar Bar { get; set; }
}
class Program
{
static void Main(string[] args)
{
var foo = new Foo
{
Bar = { Name = "Hello" }
};
}
}
Этот код компилируется успешно, но я думаю, что он не должен компилироваться. Кроме того, при его запуске вы получаете исключение NullReferenceException. Отсутствующий код — это «новый бар» в инициализации свойства Bar.
[code]class Bar { public string Name { get; set; } }
class Foo { public Bar Bar { get; set; } }
class Program { static void Main(string[] args) { var foo = new Foo { Bar = { Name = "Hello" } }; } } [/code]