重新捡起并深入 C++的方法?

2017-08-25 16:42:27 +08:00
 YyYyYyy
本人上次写 C++还停留在大学期间,之后一直用是 C#和 unity3D。
由于某学术原因,可能需要重新捡起 C++和 OpenGL/DX

倒不是对内存分配,指针,引用,类这些东西不熟练。语法细节什么的翻翻 C++ Primer 也好补。
主要是对一些非语法的东西一脸懵逼,比如什么标准库啊,编写 DLL 啊,调用约定啊,还有那些一堆开头下划线的东西,甚至是 MSVC/Gcc/Clang 这些编译相关的东西(并没有学过编译原理)
哦对还有那已经计划到 C++20 的标准……
懵逼点在于这些东西我还不能整理到一个知识网络里,很散,也并不知道这些知识在哪些有名的书籍里。
想知道有什么可以用来按图索骥的东西吗?

啊当然平台是 Windows
2361 次点击
所在节点    C
9 条回复
feng1234
2017-08-25 16:45:18 +08:00
楼主是想干程序员还是就单纯完成学术任务?目的不一样,学的内容就会缩小很多
YyYyYyy
2017-08-25 16:48:14 +08:00
@feng1234 近期的话应该是学术目标吧,长远看还是想掌握 C++写程序的(毕竟 unreal 等一干引擎还是要用 C++的……
acros
2017-08-25 17:03:59 +08:00
我跟你反过来的。

标准库这个··有 C++标准库那本书,按定位,类似 C#的 System.Generic/System.Collection 哪种? (好像不太贴切的类比)。
至于 DLL、调用约定那个,大概是平时习惯.Net 环境不太适应?知道有讲这类的,但是这本也略枯燥:
https://book.douban.com/subject/3652388/
不知道有没有同类型更好的选择。
acros
2017-08-25 17:05:54 +08:00
一堆开头下划线的东西?
是指 C++或 VS 编译器内置宏吗? 这个我也不懂,一般卡着了去查 MSDN 文档的。
feelapi
2017-08-25 21:56:21 +08:00
https://book.douban.com/subject/3652388/
这本书够了,剩下的都可以 Google 到。看完了就可以开始干活了,不会的现学。学术用途的话足够了。

现在还在用 C++的都是有特别目的的,比如做大型软件(上千万行这种),通用库,操作系统等等。其他的其实要求没那么高。
skadi
2017-08-25 22:12:24 +08:00
effective mordern c++
油管上有讲这本书的.
顺便参考一下: http://en.cppreference.com/w/cpp
当然还可以看看 msdn
alqaz
2017-08-26 11:16:16 +08:00
标准库,和楼上一样,http://en.cppreference.com/w/cpp
dll 模块方面,网上搜,文章好多
c++20,现在不需要看,vs 应该不支持,看看 c++11 相关的就可以了。
编译器相关参数,都用上 vs 了,暂时不需要
调用约定,你暂时也不需要管,或者都写成一样的,就可以。
OpenGL/DX,你既然以前是做 unity3D,很多概念应该有类似的地方。
至于开头下划线的东西,我不知道你是说宏定义韩式什么,或者调用约定。
jukka
2017-08-26 19:29:45 +08:00
重点是你做的内容,并不是 C++本身的特性。
codehz
2017-08-27 23:36:27 +08:00
@alqaz #7 VS 起码实现了大部分 C++17 的东西。。。而且有 VC-LTL 这种东西的存在,也不需要太过担心低版本的兼容问题。。。反正我是试过好多 C++17 的特性,包括模块在内都是有实现的。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/385781

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX