Ste*_*ore 17 c++ programming-languages
我已经学习了一段时间的C++,我发现它非常强大.但是,问题是抽象级别不是很多,我必须自己做内存管理.我可以使用哪些语言使用更高级别的抽象.
Mat*_*ard 48
Java,C#,Ruby,Python和JavaScript可能是你面前的重大选择.
Java和C#的语言差别不大.您可以从C++中找到的这个巨大差异是内存管理(即,当不再引用对象时,会自动释放对象).如果您对桌面样式应用程序感兴趣,或者热衷于静态类型,您可以选择它们(您可能会根据您对Microsoft和Windows平台的感受来选择它们).在这两种情况下,您都会发现比C++更常用的标准库.
Python和Ruby从静态类型转移到一个可以在任何对象上调用和处理的世界(如果它不存在则在运行时失败).这既是一个祝福(更少的样板代码)和一个诅咒(编译器不能再为你捕捉这些错误).再一次,你会发现它们拥有更丰富的标准库,并且比Java/C#更高级.性能是主要的垮台,据我所知,Python比Ruby快一些.要在它们之间进行选择,如果您对Ruby on Rails框架社区的Web开发很感兴趣,那么您可能会选择Ruby,否则就选择Python.
JavaScript与C++的区别在于它完全取消了类.简单地从其他对象克隆对象,并且可以在运行时向其添加方法和属性.非常灵活,但也很容易变成一团糟.如果您对在浏览器中运行应用程序感兴趣,那么JavaScript是唯一真正的选择,而浏览器实际上是作为一个平台进入自己的应用程序.如果你没有对浏览器做很多事情,你会发现可用的标准库相当有限,但是有很多好的框架填补了一些空白.
其他一些有趣的,虽然更多的利基选择
Tho*_*omi 26
我会说从你的问题中你可能还没有完成对C++的学习.如果你还在做自己的记忆管理,那么你还有很长的路要走我的朋友!
查看auto_ptr和shared_ptr - 查看Boost库.
与抽象类似 - 你有什么特别抱怨的?AFAIK对于其他强类型语言中存在的C++没有太大的帮助.
我知道这不能回答你的问题 - 你想要向前迈进,但C++是你从未真正停止学习的事情之一.如果你感到无聊,可以进行模板和模板元编程的短暂尝试......
Wed*_*dge 18
到目前为止,我看到了很多很棒的建议.但是,我认为缺少了一些东西,汇编程序.
为何学习汇编语言?
一些汇编语言资源: