从Java / C#到C ++的最佳方法是什么?

时间:2020-03-05 18:41:23  来源:igfitidea点击:

在我的大学里,我大部分课程都使用Java。我最近还在暑期实习中学习了C(和Visual Studio环境)。现在,我要参加计算机图形学入门课程,该课程的研究生希望我们使用C ++通过GLUT访问OpenGL绑定。

在从Java / C到C ++的良好过渡方面,是否有人有任何好的资源?显然,指针将是一个大问题,但是我应该注意的其他事项是什么?任何教程,指南等都将非常有帮助!

谢谢!

解决方案

回答

如果我们已经知道Java / CI,建议我们直接使用C而不是C ++。根据该网站,GLUT对C的绑定与对C ++的绑定相同,因此我们应该都准备就绪。无论如何,学习C的最好方法是购买并阅读" C编程语言"的副本,并与C编译器一起坐下来,然后开始运行。

回答

Scott Meyers撰写的有效C ++是一本很棒的书,可以学习C ++。为我们提供该语言的概述,并介绍了许多关键概念,这些基本概念将在基本上任何C ++程序的开发过程中使用。

回答

是的,我也遇到了同样的错误。大学倾向于依靠Java,然后允许我们选择在项目期间要使用的语言。

最好的方法就是跳进去。从小处做起,迈出小步,走到那儿,只是Google会让我们感到困惑的事物。还可以找到发布了源代码的项目。了解他们如何构建程序。基本上,只是修改概念。网上有很多信息。

使其有趣并抓住一本C ++游戏开发书籍,以免它变得太快麻木了。

这是我在学习时发现有用的一些地方

http://www.cprogramming.com/

http://www.wikipedia.com

http://www.cplusplus.com/

回答

Effective C++ by Scott Meyers is a great book to help you learn C++. Gives you an overview of the language and introduces a lot of key concepts that you will use throughout the development of basically any C++ program.

我喜欢这本书的所有3个版本,这是我在UT担任高级班的一门课中的其中一本书,但这不是一本入门书。我们可以花很少的钱就可以在C ++中感到自在,尽管在阅读Meyer的著作之前,我们肯定不会成为编译器的一员。

我不知道它是否仍在打印中,但是我发现导航C ++很有用,但是我对Pascal的指针也很满意。当然,我错了,我忘记了15年前我们必须学习什么是OOP,现在要假设更多了。因此,也许迈耶并没有脱节。有什么想法吗?

回答

维基百科上有一篇关于Java和C ++之间比较的文章。

我们不必担心C ++中的检查异常,但是我们确实需要了解const正确性。

回答

有两个主要区别:语法和内存管理。

在C ++中,我们有一些指针,它们的功能更强大(或者对功能的依赖性更低,具体取决于对功率的解释),我们已经从Java中了解到了。

在Java中,我们可以这样做:

Thing mything = new Thing(); // mything is an object reference
mything.method();

在C ++中,我们可以这样做:

Thing * mything = new Thing(); // mything is an object pointer
mything->method();
delete mything;

语法上的区别很明显:"->"而不是"。"。从指向对象的指针调用对象方法时。在C ++中,完成对象后,必须显式释放内存。最终,我们将在C ++和Java中执行相同的操作,实例化对象和调用方法,将无用的分号放在每行的末尾,等等。难怪Python如此流行吗?

mything = Thing() # mything is whatever I want it to be
mything.method()

浏览任何一半合适的C ++文本将填写其余的细节。

回答

我还彻底推荐了Bruce Eckel的C ++思维。对于想进入C ++思维定势的经验丰富的程序员而言,这是一本奇妙的书。

他非常友善,可以免费提供其书籍的电子版本。

回答

我强烈建议任何学习C ++的人都读Stroustrups" C ++编程语言"。迈耶斯(Meyers)和埃克尔(Eckel)有很多东西,但对于决定该语言应该是什么以及他打算如何使用它的人来说,学习是无与伦比的。

回答

我有完全相同的问题。我唯一能找到的书是Dean C. Wills撰写的"面向CDevelopers的Pro Visual C ++ 2005"。读了很多优秀的例子,这是一本不错的书,我认为这本书可能来自我们所寻找的角度。