문제

이 질문은 이미 여기에 답이 있습니다.

나는 c#에 using 키워드이지만 using 객체를 자동으로 처리합니다.

동등성이 있습니까? With...End With 안에 Visual Basic 6.0?

도움이 되었습니까?

해결책

C#에는 동등한 언어 구성이 없습니다.

다른 팁

동등하지는 않지만이 구문이 당신에게 효과가 있습니까?

Animal a = new Animal()
{
    SpeciesName = "Lion",
    IsHairy = true,
    NumberOfLegs = 4
};

동등한 것은 없지만 구문을 논의하는 것이 흥미로울 수 있다고 생각합니다!

나는 꽤 좋아한다;

NameSpace.MyObject.
{
    active = true;
    bgcol = Color.Red;
}

다른 제안이 있습니까?

이 언어 기능을 추가하는 것이 어려울 것이라고 생각할 수는 없습니다. 본질적으로 전처리 된 것입니다.

편집하다:

나는이 기능을 기다리는 데 아 sick습니다. 그래서 여기에 비슷한 행동을 달성하는 확장이 있습니다.

/// <summary>
/// C# implementation of Visual Basics With statement
/// </summary>
public static void With<T>(this T _object, Action<T> _action)
{
    _action(_object);
}

용법;

LongInstanceOfPersonVariableName.With(x => {
     x.AgeIntVar = 21;
     x.NameStrVar = "John";
     x.NameStrVar += " Smith";
     //etc..
});

편집하다: 흥미롭게도 누군가 가이 "솔루션"으로 다시 펀치로 나를이기는 것 같습니다. 오 잘 ..

나는 다음과 같다고 생각합니다 VB:

With SomeObjectExpression()
  .SomeProperty = 5
  .SomeOtherProperty = "Hello"
End With

이게 될 것입니다 씨#:

{
  Var q=SomeOtherExpression();
  q.SomeProperty = 5;
  q.SomeOtherProperty = "Hello";
}

유일한 차이점은 VB에서 식별자에게 이름 "Q"가 없지만 기간이 이전에 다른 식별자없이 발생할 때 사용되는 기본 식별자라는 것입니다.

...와 동등한 것은 없습니다 ... 씨#.

여기에 있습니다 비교 차트 Visual Basic과 C#의 차이점을 보여주는 귀하를 위해.

C#에는 동등한 구조가 없습니다. 이것은 시각적 기본 6.0 /입니다. vb.net 특징.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top