【问题标题】:What are good (preferrably free) resources for a C#/Java developer to learn native C/C++? [closed]C#/Java 开发人员学习本机 C/C++ 有哪些好的(最好是免费的)资源? [关闭]
【发布时间】:2011-03-30 17:13:42
【问题描述】:

我在编写托管代码(即 C#.net 和 Java)方面有相当多的经验,但我一直希望能够流利地使用非托管 C/C++(因为我想在毕业后从事视频游戏工作几年内)。但是,当我一直在尝试进行转换时,我发现在 C#/Java 中我认为非常简单的事情在 C/C++ 中却是令人沮丧的困难(即获取数组的长度。我会现在永远欣赏 .Length 属性的易用性)。所以,我想知道是否有人为希望转向非托管代码的托管程序员提供任何好的(最好是免费的,最好是在线的)资源。任何建议将不胜感激!

【问题讨论】:

  • 我会把你所知道的放在一边,当你学习 C/C++ 时从头开始。有些概念你会很熟悉,但有些概念在根本上是不同的。除了尝试迁移之外,只需从头开始,您就不太可能认为 C 就像没有 # 的 C#。 ;)
  • 我很确定你也可以用 c#/XNA 编写视频游戏来谋生。
  • @The Elite - 因为没有大公司控制,所以无法管理? :-)
  • @Stanley L:C 是较小的语言,但 C++ 提供了更好的数据管理工具(STL 是您的朋友)。 C++ 还提供了使内存管理更容易(即比 C 更容易)的机制。 IMO,如果你想学习C++,最好从C++开始,而不是先学习C;这些语言的差异足以让您不得不忘记一些 C 最佳实践。

标签: c# java c++ c migration


【解决方案1】:

【讨论】:

  • 它不像乔瓦尼提到的那本书那么透彻,但它确实是我所要求的。在此之上仍然是一个很好的参考。谢谢!
【解决方案2】:

我知道这本书存在:Pro Visual C++ 2005 for C# Developers。看一下目录,看起来非托管 c++ 和 c++/cli 都被覆盖了;所以我假设您的痛点将在本书的非托管部分中涵盖。

抱歉,它不是免费的。

【讨论】:

  • 我刚刚搜索了这本书,结果发现它在我大学的图书馆里。谁知道! (不是我清楚)。无论如何,谢谢,这看起来正是我正在寻找的东西(或者至少是下一个最好的东西)。
  • 很高兴我能帮上忙。祝你好运!
【解决方案3】:

我将把它留在这里:The Definitive C++ Book Guide and List。这不是一个免费的资源列表,但一般建议用一本真正的书来学习 C++,反正你迟早会得到一本。

【讨论】:

    【解决方案4】:

    我更像是一个实验学习者,所以我建议尝试使用half life 2 source engine 编写一些模组。当你遇到麻烦时,那里有很多文档和一个体面的社区。

    另外——在深入研究之前,我会研究一下垃圾收集器是如何工作的;因为既然您将不在托管环境中,那么垃圾收集器的工作将取决于您。花一些时间研究这个;因为在您编写代码时,托管环境之间的大多数其他差异都会变得清晰;但是没有垃圾收集器并不是很清楚,可能会导致您编写看起来不错但运行起来却像废话的代码。

    您应该研究的另一件事是 stl。您可以在 cplusplus.com 找到很多关于此的文档。另外,这是一个简短的;但简洁tutorial on c++

    【讨论】:

      【解决方案5】:

      Visual C++ Developer Center 的“入门”部分可能包含一些有用的内容,但它并非专门针对托管代码程序员,因此您必须深入了解您已经知道的内容。

      【讨论】:

        猜你喜欢
        • 2010-11-25
        • 2015-11-03
        • 1970-01-01
        • 2010-10-03
        • 2010-09-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-16
        相关资源
        最近更新 更多