高手来呀 一个C++语句转为VB.NET

xtmhm2000 2011-01-04 12:11:32
result_t *resultKey = (result_t*)malloc(sizeof(result_t)*nCount);

请问大家这句怎么转为VB.net
...全文
70 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
兔子-顾问 2011-01-04
  • 打赏
  • 举报
回复
result_t *resultKey = (result_t*)malloc(sizeof(result_t)*nCount);
c++中这样写?看不出目的, 分配了内存,但不malloc不执行构造函数。
创建了一个nCount*result_t长度的内存,将首地址转换为result_t指针。
vb.net中如果不是调用c++的方法。直接写
Dim resultKey As result_t() = New result_t(nCount) {}
xtmhm2000 2011-01-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 findcaiyzh 的回复:]

malloc是C中分配内存的语句。
C/C++,需要程序员自己管理内存和对象的生存周期。因此需要分配内存和释放内存的语句。

而C#和vb.net有垃圾收集机制,net runtime会为我们管理内存,因此不需要malloc这样的语句。

在vb.net中只需要声明好result_t这个类。然后new出来即可
Dim resultKey as result_t = New resul……
[/Quote]
这么早就早了呀
我的 result_t 是这样的
<StructLayout(LayoutKind.Explicit)> _
Public Structure result_t
<FieldOffset(0)> _
Public start As Integer
<FieldOffset(4)> _
Public length As Integer
<FieldOffset(8)> _
Public sPos As Integer
<FieldOffset(12)> _
Public sPosLow As Integer
<FieldOffset(16)> _
Public POS_id As Integer
<FieldOffset(20)> _
Public word_ID As Integer
<FieldOffset(24)> _
Public word_type As Integer
<FieldOffset(28)> _
Public weight As Integer

End Structure

不知要怎么做?
xtmhm2000 2011-01-04
  • 打赏
  • 举报
回复
这么早就上了呀
宝_爸 2011-01-04
  • 打赏
  • 举报
回复
malloc是C中分配内存的语句。
C/C++,需要程序员自己管理内存和对象的生存周期。因此需要分配内存和释放内存的语句。

而C#和vb.net有垃圾收集机制,net runtime会为我们管理内存,因此不需要malloc这样的语句。

在vb.net中只需要声明好result_t这个类。然后new出来即可
Dim resultKey as result_t = New result_t()

如果是数组:
Dim resultKey(nCount) As result_t
Dim i As Integer = 0
For i = 0 To nCount -1
Dim newResult As result_t = New result_t()
resultKey(i) = newResult
Next
宝_爸 2011-01-04
  • 打赏
  • 举报
回复
malloc是C中分配内存的语句。
C/C++,需要程序员自己管理内存和对象的生存周期。因此需要分配内存和释放内存的语句。

而C#和vb.net有垃圾收集机制,net runtime会为我们管理内存,因此不需要malloc这样的语句。

在vb.net中只需要声明好result_t这个类。然后new出来即可
Dim resultKey as result_t = New result_t()

如果是数组:
Dim resultKey(nCount) As result_t
Dim i As Integer = 0
For i = 0 To nCount -1
Dim newResult As result_t = New result_t()
resultKey(i) = newResult
Next
xtmhm2000 2011-01-04
  • 打赏
  • 举报
回复
解决了

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧