programing

VB.NET 알려진 길이의 새 빈 배열을 선언하는 방법

oldcodes 2023. 6. 3. 08:43
반응형

VB.NET 알려진 길이의 새 빈 배열을 선언하는 방법

VB.NET에서 배열을 선언하고 나중에 코드에서 알려진 길이로 초기화하는 방법이 있습니까?즉, 다음 C#.NET 코드에 해당하는 VB.NET을 찾고 있습니다.

string[] dest;
// more code here
dest = new string[src.Length];

저는 VB에서 이것을 시도했지만 작동하지 않았습니다.

Dim dest() as string
' more code here
dest = New String(src.Length)

제가 무엇을 빠뜨리고 있나요?


참고: 확인할 수 있습니다.

Dim dest(src.Length) as string

작동하지만 어레이의 선언과 초기화를 분리하려고 하기 때문에 제가 원하는 것은 아닙니다.

이러한 경우 VB.NET의 구문은 조금 다릅니다.의 등가물

string[] dest;
// more code here
dest = new string[src.Length];

이라

Dim dest As String()
' more code here
dest = New String(src.Length - 1) {}

구문 노트

Visual Basic 구문을 사용하여 배열 크기를 정의할 때 배열의 전체 요소 수가 아닌 가장 높은 인덱스를 지정합니다.learn.microsoft.com

이 두 어레이의 길이는 모두 5입니다.

C#:
string[] a = new string[5];
VB: 
Dim a As String() = New String(4) {}

이를 위한 일반적인 방법은 배열을 다음과 같이 선언하는 것입니다.

Dim my_array() As String

코드 후반부에

ReDim my_array (src.Length - 1)

사용할 수 있습니다.Redim이미 언급했지만 이 코드는 C#에 해당하는 VB 코드입니다.

Dim dest As String()
dest = New String(src.Length - 1) {}

그러나 동적 어레이는 사용하지 않도록 하십시오.제네릭List(Of T)훨씬 더 유연합니다.

언급URL : https://stackoverflow.com/questions/18074925/vb-net-how-to-declare-new-empty-array-of-known-length

반응형