求推荐 C++好的学习资源,博客、视频、项目均可

2018-08-04 10:10:06 +08:00
 xiangchen2011

最近在研究 C++,觉得还是应该认真学习下,提升自己的代码编写水平

6116 次点击
所在节点    C
32 条回复
tomfs
2018-08-04 10:20:53 +08:00
github 找自己兴趣相同的代码动手撸
tomfs
2018-08-04 10:21:46 +08:00
去年注释加笔记了个框架的代码,自我提升感觉很明显,推荐楼主。
Wicked
2018-08-04 10:27:57 +08:00
看 C++程序语言,教父写的那本
看 Effective C++,两本,Meyer 写的
看 C++对象模型
上面的依次往下,由浅入深,根据你自己所在阶段选择
Wicked
2018-08-04 10:35:59 +08:00
之前看过还有一本不错的,好像叫 C++并发编程还是啥来着,里面有讲 C++11 的同步机制和共享内存模型,写多线程的话值得一看
xuyuheng0905
2018-08-04 11:23:44 +08:00
@Wicked C++ Concurrency in Action. Manning.
smallseven
2018-08-04 11:32:08 +08:00
个人觉得学习 C++,先从语法,到逻辑,再到编译,再到优化,慢慢的深入。C++说到底只是工具,多学多用就会熟练,精通的话不敢讲,起码会得心应手一点。其实我们更需要的是一些基础知识和编程思想。多思考,多练,书的话就找经典的一两本就行,推荐 C++ 11,C++性能优化指南。总之图精不图多,还有就是要动手。
wzxlovesy
2018-08-04 11:32:31 +08:00
C++ programming language 4th
Effective modern c++
Design patterns in modern c++
C++ 11 工程实践与代码优化(国人写的,名字记不清了,但差不多是这个)

一些稍早的书:
C++沉思录
Effective c++ / More effective c++
C 和 C++代码精粹
lance6716
2018-08-04 11:55:13 +08:00
哈哈正好昨天我们论坛有个劝退贴

你确认你入门了吗?看这个程序:
class Bar {
public:
Bar() {
if (rand() % 2 == 1) {
throw "Wow! I am an error!";
}
}
void print() {
printf("Hello world!\n");
}
};

void foo(Bar *a, Bar *b) {
a->print();
b->print();
delete a;
delete b;
}

int main() {
foo(new Bar(), new Bar());
return 0;
}


上述程序有没有内存泄漏的风险?
Wicked
2018-08-04 12:07:10 +08:00
@xuyuheng0905 对,就是这本,memory order 那一块写得很清楚,作者好像也参与了这部分的标准制定
zmxnv123
2018-08-04 12:39:53 +08:00
头像是 baston 吗?
zmxnv123
2018-08-04 12:40:32 +08:00
额 不是 当我没问 @zmxnv123
HimmelTan
2018-08-04 14:10:52 +08:00
c++ primer 不推荐吗?我最近看的是这本,初学者,有 c 和 java 的一点点基础。
xiangchen2011
2018-08-04 14:14:54 +08:00
太厚的书感觉就是劝退。。。。。。而且网上很少火的 C++项目,接触到的很多都是比较高级的东西,从基础到高级感觉缺乏一个有效的过度
xiangchen2011
2018-08-04 14:16:31 +08:00
然而看顶会的 paper,大多还是因为 C++的效率高作为实现语言,所以要想向一流看齐,这还是一个必须过得坎
xiangchen2011
2018-08-04 17:27:05 +08:00
嗯。。。。。。怎么没人回复了呢。。。。。。嗯。。。。
AngelCriss
2018-08-04 17:39:42 +08:00
@xiangchen2011 很少火的项目。

大概是因为用 cpp 的人都喜欢自己造轮子吧。


接触到的都是比较高级的东西?

这可能还是和前面有关,比如标准库没有网络库,要想用网络库就得自己写,这就涉及到了系统编程。这样就会发现会了 cpp 语法做不了啥事,导致看到 cpp 的轮子觉得高级?

最后,回到正题,purecpp.org 还算是个 cpp 社区,楼主可以看看。
项目的话,purecpp 也有些项目 github.com/topcpporg
xiangchen2011
2018-08-04 17:45:13 +08:00
@AngelCriss 可以可以,这个社区很不错啊
AngelCriss
2018-08-04 17:54:58 +08:00
@xiangchen2011 然而这个社区并不活跃,大概只有祁宇一个人吧。。
laike9m
2018-08-04 18:39:49 +08:00
视频的话推荐一个 YouTube 频道 TheChernoProject,正经的 EA 现役工程师,讲解清晰质量极高
https://www.youtube.com/user/TheChernoProject
gnaggnoyil
2018-08-04 19:19:26 +08:00
cppreference.com
WG21 的 proposal paper 和 standard 的 working draft(主要是 proposal paper)
CppCon 里的大部分 presentation
《 Real World Haskell 》
这些就基本够你看的了

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

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

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

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

© 2021 V2EX