NETLink`
NETLink`

ReturnAsNETObject

ReturnAsNETObject[expr]

expr の評価中の.NETの呼出しがその結果を値としてではなく,オブジェクト参照(つまりNETObject式)として返すように仕向ける.

詳細とオプション

  • ReturnAsNETObjectを使うためには,まず.NET/Link をロードしなくてはならない.それにはNeeds["NETLink`"]を実行する必要がある.
  • ほとんどの.NETオブジェクトは参照として返されるが,重要なWolfram言語表記を持つものは,文字列,配列,いわゆるSystem.Int32のように「囲まれた」値等の「値で」返される.
  • ReturnAsNETObjectは正常な動作をオーバーライドし,Wolfram言語に返された任意のオブジェクトが参照としてのみ送られるように強制する.
  • ReturnAsNETObjectは,一般に.NETとWolfram言語の間で不必要に大きな数の配列を送ったり受け取ったりすることを避けるために使用される.
  • ReturnAsNETObjectを使って参照のみが送られるようにすることができる.その後で最終値が必要な場合には,NETObjectToExpression関数を最後に使うとよい.