我知道这听起来很愚蠢但是:
我发现这个应用程序是用Mono编写的,它是开源的.
在查看源代码的同时,我发现这两个"使用"指令停止了我:
using Gdk;
using Mono.Unix;
Run Code Online (Sandbox Code Playgroud)
我猜他们是Mono特定的库.
那么,有可能在Windows下运行Mono吗?(也许是Visual Studio Express版?)
我正在努力学习C#
我看到该应用程序有一个Windows分支,但它是空的.
BTW:Mono是否首先考虑过跨平台?
编辑
我已下载/安装并运行示例代码
using Mono.Unix;
class X { static void Main () { System.Console.Write("OK");} }
Run Code Online (Sandbox Code Playgroud)
我自己的问题的答案是:
x.cs(1,12): error CS0234: The type or namespace name `Unix' does not exist
in the namespace `Mono'. Are you missing an assembly reference?
Compilation failed: 1 error(s), 0 warnings
Run Code Online (Sandbox Code Playgroud)
不,它不起作用:(
我不确定您是否能够使用 Mono.Unix 命名空间来使用代码,但通常如果您要创建跨平台代码,则不必这样做。
Gnome 做linux移植。然而,对于学习项目,我可能建议从实际上跨平台的代码开始,或者现在在 Linux 上开发。解决跨平台问题和可能不完整的移植只会使学习过程变得复杂。
所以,我想总结一下你最初的问题。是的,您可以在 Windows 上运行 Mono,但可以编写特定于平台的代码,您选择的示例应用程序确实已经这样做了。我上面提供的链接是使该代码在 Windows 上运行的端口。如果不进行移植(更改平台特定代码),该程序将无法在 Windows 上编译。