VB.NET에서 문자열을 연결하기 위한 앰퍼샌드 vs.
VB.NET에서 다음과 같은 이점이 있습니까?&
대신 문자열을 연결합니다.+
?
예를들면
Dim x as String = "hello" + " there"
대.
Dim x as String = "hello" & " there"
예, 사용할 많은 문자열 연결에 대해 알고 있습니다.StringBuilder
하지만 이것은 더 일반적인 질문입니다.
Microsoft의 기본 설정은 VB 프로그래머가 사용하는 것입니다.&
현 상태를 떠나서+
.
+ 연산자를 사용하여 문자열을 연결할 수도 있습니다.그러나 모호성을 제거하려면 & 연산자를 대신 사용해야 합니다.
저는 두 사업자 모두에게 유리한 좋은 주장을 들었습니다.어떤 주장이 승리하느냐는 주로 여러분의 상황에 달려 있습니다.제가 말할 수 있는 한 가지는 당신이 이것저것 표준화해야 한다는 것입니다.둘을 혼합한 코드는 나중에 혼동을 요청합니다.
내가 지금 기억하는 두 가지 주장은 당신을 지지하는 것입니다.&
:
- 사용하지 않는 경우
Option Strict
그리고 두 개의 숫자 문자열이 있습니다. 컴파일러가 당신의 의미를 혼동하기 쉽습니다.+
산술 덧셈이 있는 연산자 - 이전 vb6 시대 코드를 많이 업데이트하는 경우 연결 연산자를 변환할 필요가 없습니다(그리고 일관성을 원합니다).
그리고+
:
- 혼합 vb/C# 상점이 있는 경우 연결 연산자가 하나만 있으면 좋습니다.언어 간에 코드를 쉽게 이동할 수 있으며 언어 간에 이동할 때 프로그래머를 위한 컨텍스트 전환이 훨씬 적습니다.
&
VB에만 거의 고유한 반면+
문자열 사이는 많은 언어로 연결을 의미하기 때문에 가독성에서 약간의 것을 얻을 수 있습니다.
사용하는 것을 선호합니다.&
VB.NET의 문자열 연결
이에 대한 한 가지 이유는 혼동을 피하기 위해서입니다. 예를 들어
MessageBox.Show(1 & 2) ' "12"
MessageBox.Show(1 + 2) ' 3
컴파일러에게 당신의 의도를 분명히 하고 있기 때문에 사용하는 것이 더 안전합니다. (이 두 값을 연결하고 싶으니 둘 다 문자열로 변환해야 합니다.)
+를 사용하면 문자열이 숫자 값이면 적어도 strict 옵션이 꺼져 있으면 버그를 찾기 어려울 수 있습니다.
예:
1 + "1" = 2 ' this fails if option strict is on
1 & "1" = 11
편집: 문자열이 아닌 다른 문자열을 연결하는 경우에는 더 나은 방법을 사용해야 합니다.
저는 그것이 역사적인 것이라고 생각합니다. (Non .NET Visual Basic은 &을 사용합니다. 왜 +를 도입했는지는 확실하지 않습니다.) 그리고 취향의 문제입니다. (저는 문자열을 연결하기 때문에 &를 선호합니다. 우리는 추가하지 않습니다.
언급URL : https://stackoverflow.com/questions/3006153/ampersand-vs-plus-for-concatenating-strings-in-vb-net
'programing' 카테고리의 다른 글
Visual Studio 2019 Azure 기능 CLI 도구를 다시 다운로드합니다. (0) | 2023.05.23 |
---|---|
이미지가 Visual Studio 디자이너에 표시되지만 런타임에는 표시되지 않음 (0) | 2023.05.18 |
중첩 조인이 있는 row_to_json() 사용 (0) | 2023.05.18 |
콘솔에 Swift 사전을 예쁘게 인쇄할 수 있는 방법이 있습니까? (0) | 2023.05.18 |
Angular 2+에서 spec.ts 파일 없이 구성 요소를 생성하는 중 (0) | 2023.05.18 |