人们总是告诉我,如果我正在做一些应该使用一些Windows API来完成任何进程级别工作的应用程序,我必须使用VC++而不是任何其他.net语言.
这有什么道理吗?
使用VC++可以完成的所有事情也可以用其他.net语言完成吗?
当比较它们的功能时,所有的.net语言都是一样的吗?
如果您需要非常密切地使用本机代码,C++可能会让生活更轻松.但是,使用P/Invoke从C#,VB.NET,F#等调用Win32 API并没有什么本质上的错误.
尽管C#和VB.NET 在功能上大致相同,但并非所有.NET语言在功能方面都是相同的.我知道有一些C++/CLI暴露的东西没有被C#或VB.NET暴露 - 我不知道反过来是否正确.(我不知道对于lambda表达式,扩展方法等,C++/CLI是什么样的)