这不是编程疑问!
我将为某些应用程序编写一个 DLL。
我有两个选项可供选择: C++ 或 C# 我应该用哪种语言编写 DLL?
这会影响功能吗?
我是一个完全的新手,不了解 C++ 和 C#(但不了解 C# 中的一些小程序)。
用 C++ 或 C# 编写 DLL 的优点和缺点是什么?
非常感谢您的宝贵时间!
问候,
斯瓦南德!
DLL 最好用 C 编写:)
让我解释:
DLL 是在 C++ 进入主流使用之前就被构思出来的。它们是为 C 语言创建的。您可以使用 C++ 编写 DLL,但只能在使用与 DLL 相同版本的同一编译器编写的应用程序中轻松使用它们。与 C++ 不同,C DLL 可以在 .NET 中使用(是的,我知道,从技术上讲可以,但这是一个令人头痛的问题)。
如果您使用 C#(或任何其他 .NET 语言)创建 DLL,则完全是另一回事 - 它不是 Windows DLL,它只是一个没有入口点(Main)的 .Net 程序集,因此可以从其他 .NET 使用它通过引用 DLL 来引用程序集。
总结一下:
-
如果您需要使用 .NET 语言中的 DLL - 用 C# 编写它,它不会是 Windows DLL,而只是一个程序集。非常容易使用。
-
如果您需要仅从 C++ 中使用 DLL,并且仅从同一编译器编写的应用程序中使用 DLL,请使用 C++ 编写。不方便携带,使用方便。
-
如果您想创建一个可以在 .NET、C、C++ 中使用且无论编译器如何的通用库,请使用标记为 extern“C” 并具有类似 C 的参数(如指针和POD 的。
HTH
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)