V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hhyyd
V2EX  ›  C++

C++入门以及进阶,都有什么好的建议吗?

  •  
  •   hhyyd · 2020-11-09 14:37:55 +08:00 · 4220 次点击
    这是一个创建于 1256 天前的主题,其中的信息可能已经有所发展或是发生改变。

    非科班 1 年多 crud java,接下来"可能"转去做 linux c/c++/qt 相关。

    该怎么快速上手 c++?不知道从哪里学起。

    有查询 c++ 学习路线相关帖子。有建议去查询 c++招聘 jd 的。我查了下招聘要求相对都比较模糊。基本都是熟练使用 c++,有什么什么经验,熟悉 linux 开发,熟悉面向对象,熟悉网络编程,熟悉设计模式等...

    开发工具一般用啥?需要 linux 环境开发吗?书有啥建议看看的?《 C++ Primary 》?

    例如学 java 的时候有 java 核心技术,进阶也有很多书看。项目的话,有些 springboot 一些快速上手的开源项目。

    转行原因不在此讨论。如果有好的学习建议,谢谢大家了。

    第 1 条附言  ·  2020-11-09 15:09:57 +08:00
    更正《 C++ Primer 》
    21 条回复    2020-12-23 17:47:04 +08:00
    jmc891205
        1
    jmc891205  
       2020-11-09 14:41:57 +08:00   ❤️ 1
    A tour of C++ -> {Effective C++, More effective C++, Effective modern C++, Effective STL}
    配合 https://en.cppreference.com/w/ 食用效果更佳
    coderluan
        2
    coderluan  
       2020-11-09 14:46:07 +08:00
    "转行原因不在此讨论。"

    无论什么原因都建议别转.
    oluoluo
        3
    oluoluo  
       2020-11-09 14:58:43 +08:00
    打错了 是 primer
    ViggoSite
        4
    ViggoSite  
       2020-11-09 15:00:24 +08:00
    @coderluan 为啥
    hhyyd
        5
    hhyyd  
    OP
       2020-11-09 15:02:59 +08:00
    @oluoluo 我其他地方 c/v 的,狗头。更正《 C++ Primer 》
    hhyyd
        6
    hhyyd  
    OP
       2020-11-09 15:05:58 +08:00
    @coderluan c++这行业这么难搞吗
    coderluan
        7
    coderluan  
       2020-11-09 15:06:52 +08:00
    @ViggoSite 学习成本太高了, 一般人学不深, 不学深的话和 Java 比并没啥优势.
    coderluan
        8
    coderluan  
       2020-11-09 15:16:47 +08:00
    @hhyyd C++程序员本身对企业来说性价比太低了, 能不用就不用, 但是又有些地方需要用, 所以基本上学好学不好是两个极端, 学好薪资高, 学不好没正经工作, 基本没啥中间状态, 从大学开始学也就算了, 都工作了再半路改学真没必要, 大概率是还会转回去的.
    hhyyd
        9
    hhyyd  
    OP
       2020-11-09 15:55:55 +08:00
    @coderluan 说的在理,但是我现在已经回不了头了,先试试,不行只能转回来了,苦笑。
    l00t
        10
    l00t  
       2020-11-09 16:12:57 +08:00
    C++ Primer 这本书没啥好看的,写得不清不楚不明不白的。看完不见得能记住多少。
    northisland
        11
    northisland  
       2020-11-09 16:13:55 +08:00
    不理解为什么有人会推荐的 C++ Primer (初级读本,识字读本),1000 页左右了,我看来都是茴香豆写法。


    我更喜欢这 2 本:

    《 C++语言导学》第 2 版( 2019 版) 作者 熊 · 斯特劳斯特鲁普 。直接看语言作者的介绍,不好么? 240 页。

    《 C++高级编程》第 3 版讲到 c++14,第 4 版加上了 c++17 。非常基础与实用。

    另外多看 cppreference 。
    Loserzhu
        12
    Loserzhu  
       2020-11-09 16:17:45 +08:00
    @northisland 原来比雅尼又叫熊吗😂
    northisland
        13
    northisland  
       2020-11-09 16:21:09 +08:00
    @Loserzhu 搞一下笑,丹麦语含义是熊

    https://en.wikipedia.org/wiki/Bjarne
    Ehend
        14
    Ehend  
       2020-11-09 16:32:29 +08:00 via Android
    primer 这本,感觉适合有基础的,知道自己想看什么的人看。对新人来讲有点厚
    wnpllrzodiac
        15
    wnpllrzodiac  
       2020-11-09 18:00:10 +08:00 via Android   ❤️ 1
    当体量成规模了才考虑 c++.因为大体量用 java 内存。cpu 烧不起。太耗资源了
    lechain
        16
    lechain  
       2020-11-09 18:31:12 +08:00 via Android
    确定要转,先学 c,有了 c 的基础(不需要精通)再上 c++,既然目标环境是 Linux c++ qt,那就直接上 Linux 系统,Linux 零基础的话建议用虚拟机,发行版建议用 ubuntu 系,原生 ubuntu 或者衍生的像 mint 啊之类的都可以
    zhttp
        17
    zhttp  
       2020-11-10 15:45:05 +08:00
    @lechain 目前来说好像学 c 和学 c++差不多是两回事儿了吧。。。(来自一个《学校里只学过 c 但找了份 c++的工作因此不得不从头开始学 c++》的菜鸟的感慨)
    lechain
        18
    lechain  
       2020-11-10 18:44:15 +08:00 via Android
    @zhttp 是两回事啊,所以才建议先上 c,打个基础再上 c++啊
    lawrencejry
        19
    lawrencejry  
       2020-11-22 22:42:04 +08:00
    专业硬件,学的 C,后来又看了 java 和 python 。个人入手 C++,是从《 C++ primer 》和侯捷老师的《 STL 源码剖析》,配合 B 站视频更香哦。linux 跟着老男孩学的,我自学用的 CentOS,但工作是在麒麟系统(一言难尽),写 C++主要用到 visual studio,Qt 是 Qt Creator 。
    hhyyd
        20
    hhyyd  
    OP
       2020-12-02 09:44:16 +08:00
    安利:CPlusPlusThings.git ==> https://light-city.club/sc/
    hatsuyuki
        21
    hatsuyuki  
       2020-12-23 17:47:04 +08:00
    @lawrencejry CLion 比 Visual Studio 更香
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5278 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 05:56 · PVG 13:56 · LAX 22:56 · JFK 01:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.