0

我正在尝试将 Bob Jenkins 完美哈希函数从 C# 转换为 VB.Net,但我一直坚持以下。

a += (UInt32)(url[k + 0] + (url[k + 1] << 8) + (url[k + 2] << 16) + (url[k + 3] << 24))

如何在 VB.Net 中编写上述语句?

请注意以下事项:

a 是 UInt32
url 是字符串
k 是整数

我尝试了以下但它不起作用。

a += url(k + 0) + (url(k + 1) << 8) + (url(k + 2) << 16) + (url(k + 3) << 24)

为了避免手动进行类型转换,我使用“Option Strict Off”

4

2 回答 2

0

我认为,vb 不支持从字符串到整数的类型转换(按字符值)。
用于Val(Mid(url,k,1))将 char 转换为整数并对其进行移位和其他数学运算。

于 2012-04-20T06:05:59.667 回答
0

好的,我从这个页面得到了答案。请参阅 Henk Holterman 的回答和 MarkJ 的评论。

将 C# 代码转换为 VB.NET

于 2012-04-20T06:29:08.623 回答