Конструкторы C #, перегружающие ненужные скобки - PullRequest
0 голосов
/ 08 мая 2018

Я писал небольшой класс и только что понял, что меня спровоцировало. Вот как выглядит мой код:

class Foo
{
    public int Value;

    public Foo(Bar bar) : this(bar.Ga) { }
    public Foo(Baz baz) : this(baz.Bu) { }
    public Foo(Qux qux) : this(qux.Zo) { }
    public Foo(int val)
    {
        ...
        this.Value = val;
        ...
    }
}

Мне было интересно, можем ли мы заменить пустые скобки { }, что-то вроде:

public Foo(Bar bar) : this(bar.Ga);

1 Ответ

0 голосов
/ 08 мая 2018

К сожалению, нет.

Синтаксис обязывает тело для конструктора, и пустые скобки - лучшее, что вы можете сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...