【问题标题】:Desktop applications with C++ and .NET or other使用 C++ 和 .NET 或其他的桌面应用程序
【发布时间】:2012-01-24 02:48:45
【问题描述】:

我正在努力决定是否应该努力学习 C++ 或 C#

现在我唯一的背景是 PHP,所以我走哪条路并不重要。我真的很喜欢我最喜欢的许多程序都是用 C++ 构建的,这向我展示了它有多么强大,更不用说 PHP 本身是由 C 构成的。

我希望构建桌面应用程序。根据我对 C++ 的研究,我必须找到一个 GUI 库来构建桌面应用程序,而 C# Visual Studio 几乎可以为您处理好它。

今天我看到微软有一个使用 .NET 的 VisualC++,这是否意味着 .NET 被用作它的 GUI,还是在走这条路时仍然需要 GUI 库?

请帮助我更好地理解,因为我提到我的背景是 PHP 和网页设计,所以这是一个全新的球场,目前相当压倒性。

如有任何关于该主题的建议,也将不胜感激,谢谢

【问题讨论】:

  • 有关 C# 的详细信息,请参阅:stackoverflow.com/questions/4310442/…
  • 你能详细说明你想从中得到什么吗?你是为了学习而学习吗?试图发展你的事业?构建特定的东西?你会为谁编写这些桌面应用程序?如果您正在考虑使用 C#/.NET,我假设您会为 Windows 用户编写代码。

标签: c# c++ desktop-application


【解决方案1】:

(所有主观,自然)

Microsoft .Net 堆栈(C#、IIS、Sql Server 等)非常有用。您可以使用它来创建 Windows 应用程序、网站、Windows 服务和 Web 服务。 AFAIK 只有 Java 具有同等级别的多用途,因此很容易内置。

C++ 很棒,但也有缺点。使用 .Net 和 C#,您位于运行时之上,该运行时在很大程度上不会损害性能(除非您正在编写一些可笑的高负载应用程序),为您处理内存管理,包括错误捕获和沙盒。您的应用程序具有开箱即用的能力,比 C++ 应用程序成为“更好的公民”。 [同样,C++ 中没有什么能阻止你做这些事情,但没有为你考虑那么多因素]。

C# 也是一种非常常见的商业语言。大多数企业使用开发人员来解决业务问题,而 C++ 并不适合其中很多。开发复杂,耗时过长。 .Net 更适合于更快速的开发生命周期,因为底层框架为您处理了如此多的工作。

C# - 更多的商业工作,通常是一个不那么繁重的编程生活(耶!没有手动垃圾收集!)也适用于 web 和 windows。 C++ - 性能更高,功能更强大(因为没有运行时限制你可以做什么 - 想要让操作系统崩溃?继续......)但你必须自己做大部分事情。也没有网络(AFAIK)。

Visual C++ 是微软针对 Windows 上的 C++ 开发的 IDE。一个不错的用户界面供您编写软件。您可以在没有它的情况下编写 Windows GUI 软件,并且可以使用 Visual C++ 编写控制台应用程序。

希望能有所帮助:)

【讨论】:

    【解决方案2】:

    这个问题很主观,但我会根据你作为初学者的水平来回答。

    去 C#,它更容易,你会发现大量的资源和帮助。很难找到一本好的 C++ 初学者书籍或教程。

    C# 中有非常高级的主题。而且您可以轻松开始职业生涯。

    桌面应用程序与网络应用程序不同,但您可以找到大量教程和视频。谷歌一下就行了。

    【讨论】:

      【解决方案3】:

      如果您已经了解指针并且愿意投入至少 3 年的时间来成为胜任者,请查看 C++。

      否则,学习 C#。

      我从来没有在任何事情上都使用过托管 C++,而且我读过的一些关于它的东西,很少有人使用它。

      【讨论】:

      • 托管 C++(尽管不再这么称呼它)几乎专门用于互操作目的,以使 .NET 代码与本机代码无缝互操作。你不应该将它用于其他任何事情。我不建议在其中编写应用程序。如果您想要托管的 .NET 代码,请使用 C#。如果您想要本机代码,请使用 C++。
      猜你喜欢
      • 2019-01-17
      • 1970-01-01
      • 1970-01-01
      • 2010-10-29
      • 1970-01-01
      • 2018-03-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多