4

Clojure CLR で同等の C# コードを実行しようとしています

using System.Net;
IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0);
EndPoint remote = (EndPoint) sender;
recv = sock.ReceiveFrom(data, ref remote);

私がClojureで試したことはうまくいきません:

(let [
      sender (IPEndPoint. (IPAddress/Any) 0)
      ^EndPoint remote ^EndPoint sender
      recv (.ReceiveFrom sock data (by-ref remote))
      ]
      (println (.ToString remote))
      ;; Do something with data...
 )

0.0.0.0:0 が表示されるだけです。参照が機能していないと思いますが、ヒント/キャスト構文もわかりません。

ref https://github.com/richhickey/clojure-clr/wiki/CLR-Interopに関する情報については、こちらを参照してください。 型の指定についてはこちら: https://github.com/clojure/clojure-clr/wiki /指定型

4

1 に答える 1