gpt4 book ai didi

.net - IPEndpoint是否必须是上流的,为什么?

转载 作者:行者123 更新时间:2023-12-03 11:57:51 25 4
gpt4 key购买 nike

let test_smtp (smtp_server_address : string) (port : int) =
let hostEntry : IPHostEntry = Dns.GetHostEntry(smtp_server_address)
let endPoint : IPEndPoint = new IPEndPoint (hostEntry.AddressList[0], port)
( use tcpSocket = new Socket(endPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp)
tcpSocket.Connect(endPoint)
)

在上面的不完整代码段中,
let endPoint : IPEndPoint = new IPEndPoint (hostEntry.AddressList[0], port)
产生两个错误。第一个指示找不到合适的重载方法。

我以前从未见过的第二个错误是
This value is not a function and cannot be applied.
我通过将一个单独的let语句分配给IPAddress并将错误映射到该行(上面的示例中未包括),将其隔离到 hostEntry.AddressList[0]

我看过一些有关F#无法升级的文章,但是对于为什么会发生此错误,我仍然有些困惑。

最佳答案

正如KVB在评论中所说

a[0]

表示“将 a处理为应用于单个参数'仅包含零的列表'的函数”。

你要
a.[0]

获取数组 a的零索引元素。

修复此问题后,类型推断将适用于重载解析,并且不需要强制转换等。

关于.net - IPEndpoint是否必须是上流的,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43480998/

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