<
查看: 13850| 回复: 89
收起左侧

如何从0开始学C++

 
本楼:   👍  3
100%
0%
0   👎
全局:   440
95%
5%
24

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
楼主做了两年不到的前端,非CS背景,只会写点js, 业余用Java 刷题,现在由于换工作,需要写C++. 求问地里各位大神如何从0开始高效学习C++, 楼主愿意花时间和努力(以及头发。。。 hhh)

翻了地里的帖子,大家有提到一些书 或者 学习什么源码, 也有人提议先学习下C, Linux ,做几个项目什么的。。。不知道对于我这种C++小白, 该从哪里下手,实在有点迷,欢迎大家推荐好的资料(中文 / 英文 / 书籍 / 视频 / 课程 / udemy ... 皆可)或好的学习方法,留言必回复!也欢迎大家给我加米,让我有大米观看更多质量高的帖子 ❤

后面会在总结大家推荐的好方法!

跪谢Thanks♪(・ω・)ノ

评分

参与人数 3大米 +4 收起 理由
易潇 + 1 赞一个
JennyFast + 1 赞一个
debuger + 2 给你点个赞!

查看全部评分


上一篇:求一大佬指导作业可有偿
下一篇:快速迭代时怎么保证系统稳定性和质量?

本帖被以下淘专辑推荐:

三喵 2021-11-4 15:51:41 来自APP | 显示全部楼层
本楼:   👍  32
100%
0%
0   👎
全局:   902
94%
6%
61
zzh372024750 发表于 2021-11-04 00:47:12
这个很看脸,比如我觉得java 就是很舒服,我大概三次尝试c++, 一遇见指针我就退了。。。。晕眩的很
你大概晕针😂

评分

参与人数 2大米 +2 收起 理由
longjia + 1 给你点个赞!
feifeimary + 1 赞一个

查看全部评分

回复

使用道具 举报

麻倉枼 2021-11-5 11:25:23 | 显示全部楼层
本楼:   👍  25
100%
0%
0   👎
全局:   359
77%
23%
106
本帖最后由 麻倉枼 于 2021-11-4 22:30 编辑

既然有一点Java的知识背景,你可以花大量地时间攻略这些基础:
1. Pointer vs Reference
    - smart pointer

2. Stack vs Heap
   
3. new vs malloc vs calloc
4. delete vs free
   - 进阶: Memory allocation in general.

5. Data structure
    - vector vs. linked list vs. fixed array
        - iterator vs. pointer
        - different ways to traverse an array.

    - hashtable
         - ordered map vs. unordered map
         - ordered set vs unordered set
     - tree
         - binary tree vs. binary search tree.
         - complete binary tree vs. full binary tree, etc.

      - heap (不是memory那个)
        - heap vs binary tree
        - min heap
        - max heap
     
       - stack (不是memory那个)
          - stack vs. vector vs. queue vs. deque

6. Little Endian vs. Big Endian

7. Two complements

8. Bit Manipulation

9. inline functions

10. friend.

11. intializer list vs. Normal way to initalizing an instance of object.

12. Constructor, Destructor, Copy Constructor, Copy Destructor, Move Constructor, Default Constructor, 等等
       - Operator overloading

13. temporary variables

14.  optional argument

15.  static variable

16.  virtual functions
       - vTable
       - vPointer
       - Diamond Problem
       - Multi-inheritance
       - Virtual class

17. extern.

18. struct vs. class

19. default privacy level of a struct,
      default privacy level of a class.

20. const.

21. static_cast, dynamic_cast, reinterpret_cast, C-style cast.
      - When to use them?

22. bool, char, short, int, long, float, double
      铭记它们的size和上下限。

23. tuple vs. pair
24. string vs. string_view vs. const char*

25. structure binding

26. header files vs. source file
       - relationship between Linker and Object File
       - How an IDE compile a program.

27. Visual Studio:
      - Debug vs. Release mode
      - break point
      - How to debug
      - console
      - call stack





进阶:
23. parallel programming
      - thread
      - SIMD

24. generic programming
    - template

暂时想到这些

评分

参与人数 11大米 +12 收起 理由
Pro MacBook + 1 赞一个
火喵喵 + 1 很有用的信息!
meglory + 1 赞一个
paopaoyu + 1 很有用的信息!
yz978 + 1 欢迎分享你知道的情况,会给更多积分奖励!

查看全部评分

回复

使用道具 举报

YOUY01 2021-11-4 15:11:57 | 显示全部楼层
本楼:   👍  10
100%
0%
0   👎
全局:   767
97%
3%
25
在知乎刷到过一个pro的说法,先去看Google C++ style guide,看懂每一条为什么要这么做,然后去读LevelDB源码。个人不写C++没试验过,但看起来这个路径很靠谱高效

评分

参与人数 1大米 +2 收起 理由
yoci畅 + 2 给你点个赞!

查看全部评分

回复

使用道具 举报

hhcs 2021-11-4 13:11:58 来自APP | 显示全部楼层
本楼:   👍  1
100%
0%
0   👎
全局:   99
92%
8%
9
c++trick很多 感觉你还是专功java吧
现在c++主要是底层跟cv相关的代码用 java可能机会更多
回复

使用道具 举报

 楼主| 美羊羊爱喝鱼头汤 2021-11-4 13:30:40 来自APP | 显示全部楼层
本楼:   👍  1
100%
0%
0   👎
全局:   440
95%
5%
24
hhcs 发表于 2021-11-03 22:11:58
c++trick很多 感觉你还是专功java吧
现在c++主要是底层跟cv相关的代码用 java可能机会更多
谢谢 我是工作需要 必须要学C++, 我没得选😂😂
回复

使用道具 举报

vvqqdd 2021-11-4 13:39:01 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   2440
89%
11%
306
learncpp
跟这个网站学
回复

使用道具 举报

chhf1292315 2021-11-4 14:43:49 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   327
78%
22%
93
我是java转的C++,之前java有些基础了。当时就是看c++ primer这本书(略读已经会的部分)。c++基础部分和java不一样的地方有(讲些目前想到的):指针,引用,左值右值,面对对象的virtual函数和不同的构造(移动,拷贝)函数,容器里的数据结构和java不一样,运算符重载,智能指针。往深的讲有template,tuple什么的。

java里没有指针这个概念,因为java 能用指针的地方都是用的指针,c++的指针和引用要多花点功夫看看。

不想看书的话tutorialspoint c++ 个人感觉不错。

评分

参与人数 2大米 +3 收起 理由
豌豆尖尖 + 1 赞一个
yoci畅 + 2 给你点个赞!

查看全部评分

回复

使用道具 举报

TQL0200 2021-11-4 15:17:33 来自APP | 显示全部楼层
本楼:   👍  1
100%
0%
0   👎
全局:   8540
84%
16%
1630
不需要学习。直接codeforce刷起来 自然而然就熟练了

评分

参与人数 1大米 +2 收起 理由
yoci畅 + 2 很有用的信息!

查看全部评分

回复

使用道具 举报

vvqqdd 2021-11-4 15:20:39 | 显示全部楼层
本楼:   👍  4
100%
0%
0   👎
全局:   2440
89%
11%
306
TQL0200 发表于 2021-11-4 00:17
不需要学习。直接codeforce刷起来 自然而然就熟练了

不知道的还当真了 lol
又在坑新手
回复

使用道具 举报

zzh372024750 2021-11-4 15:47:12 | 显示全部楼层
本楼:   👍  0
0%
0%
0   👎
全局:   4046
97%
3%
129
这个很看脸,比如我觉得java 就是很舒服,我大概三次尝试c++, 一遇见指针我就退了。。。。晕眩的很
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表