programing

VB의 With 문에 해당하는 C#은 무엇입니까?

oldcodes 2023. 5. 29. 11:08
반응형

VB의 With 문에 해당하는 C#은 무엇입니까?

중복 가능성:
c#의 "With…End With"와 동등합니까?

VB의 특징 중 하나는 제가 정말 좋아하는 것이 있었습니다.With진술.C#에 해당하는 것이 있습니까?당신이 사용할 수 있다는 것을 압니다.using네임스페이스를 입력할 필요가 없지만 이 이름만 입력할 수 있습니다.VB에서 다음을 수행할 수 있습니다.

With Stuff.Elements.Foo
    .Name = "Bob Dylan"
    .Age = 68
    .Location = "On Tour"
    .IsCool = True
End With

C#에서 동일한 코드는 다음과 같습니다.

Stuff.Elements.Foo.Name = "Bob Dylan";
Stuff.Elements.Foo.Age = 68;
Stuff.Elements.Foo.Location = "On Tour";
Stuff.Elements.Foo.IsCool = true;

그렇지 않습니다. 변수를 할당해야 합니다.그렇게

    var bar = Stuff.Elements.Foo;
    bar.Name = "Bob Dylan";
    bar.Age = 68;
    bar.Location = "On Tour";
    bar.IsCool = True;

또는 C# 3.0 이상에서:

    var bar = new FooType
    {
        Name = "Bob Dylan",
        Age = 68,
        Location = "On Tour",
        IsCool = True
    };

    Stuff.Elements.Foo = bar;

객체 이니셜라이저(생성자 호출에서만 사용 가능)를 제외하고 얻을 수 있는 최선의 방법은 다음과 같습니다.

var it = Stuff.Elements.Foo;
it.Name = "Bob Dylan";
it.Age = 68;
...

C# 3.0에서 가장 가까운 것은 생성자를 사용하여 속성을 초기화할 수 있다는 것입니다.

Stuff.Elements.Foo foo = new Stuff.Elements.Foo() {Name = "Bob Dylan", Age = 68, Location = "On Tour", IsCool = true}

언급URL : https://stackoverflow.com/questions/1175334/whats-the-c-sharp-equivalent-to-the-with-statement-in-vb

반응형