gpt4 book ai didi

arrays - VB.NET 可以指定数组参数的大小吗?

转载 作者:行者123 更新时间:2023-12-02 14:18:41 25 4
gpt4 key购买 nike

我想创建一个函数,它接受一个至少具有一定长度的数组的引用作为参数,以便该函数知道有足够的空间来写入它需要写入的所有数据数组。

这在 VB.NET 中可能吗?

目前我正在ReDim'ing引用的数组,但我不确定这是否真的有效。 (我想我可以测试这个方法,并通过将数组传递给small来打破它,看看,会立即尝试)

Public Function Foo(ByRef data() As Byte) As Boolean
If Data.Length < 4 Then
ReDim Preserve ProductId(4)
End If
' Other operations that put 4 bytes on the array...
Return True
End Function

即使该方法有效,我也不相信重新调整用户数组的大小与仅通知他们参数以某种方式指定长度 4 相比真的是一个很好的主意...是否有更好的方法管理这个的方法?

最佳答案

您的函数应该接受流。

Public Function Foo(ByVal stream As Stream) As Boolean
'Write bytes to stream
End Function

例如,您可以使用 MemoryStream 调用您的方法

Dim stream = new MemoryStream()
Foo(stream)
Dim array = stream.ToArray() 'Call ToArray to get an array from the stream.

关于arrays - VB.NET 可以指定数组参数的大小吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31612560/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com