2012-09-11 78 views
1

單聲道庫是否可以從MS.NET完全引用?單聲道和.NET DLL互換性

反過來呢?

如果「sorta」,那麼哪個,以及有什麼限制?

+0

一個dll編譯單聲道編譯器和其他MS編譯器?這樣做會很危險。 –

+2

@lukas,不正確 – knocte

+0

@knocte基於什麼?該單聲道沒有.Net具有的所有功能? MS尚未發佈任何兼容性測試(如Sun針對jvm),因此行爲可能會有所不同等。 –

回答

7

是的,單聲道編譯器生成與.NET框架兼容的二進制文件,反之亦然。

的唯一限制AFAIK進行管理C++:

  1. 單聲道編譯器不具有用於此的編譯器。
  2. 此語言的MS.NET編譯器生成不能在Mono中運行的混合模式程序集。

(更多信息有關this other stackoverflow question託管C++)

1

的文件格式是相同的(對於完全託管庫,看到knocte答案),所以理論上單庫是完全參考能從.NET (反之亦然)。

實際上它取決於庫的內容。如果你在庫中編寫純Linux代碼,它當然不會在.NET上運行。這也是唯一潛在的問題,如果您編寫與平臺無關的代碼,則可以使用Mono的mcs編譯器或Microsoft的csc編譯器,並在任一平臺上使用生成的庫,而不會出現任何問題。

+1

OP會談「引用程序集」,而不是運行時執行;) – knocte