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

关于提高 c++水平的一个疑问

  •  
  •   fishCatcher · 2020-04-29 01:41:34 +08:00 · 5198 次点击
    这是一个创建于 1704 天前的主题,其中的信息可能已经有所发展或是发生改变。
    小弟大四学生,打算出国读研然后找后端工作,感觉编程水平遇到瓶颈不知如何提高,来请教各位 v 友。

    目前 lz 的 c++水平停留在会基础、能刷题(大概刷了 350 道 LeetCode )的水平,然而一到实际项目就完全不知道该如何用 c++搞。之前在 tx 实习过一段时间,但主要用的是 Go,没怎么提高 c++水平;平时自己做项目就 php 一把梭了。所以感觉现在自己的水平就是各个语言都有短腿,没有一个特别擅长的。

    感觉自己的 c++水平总缺了点什么导致无法与实际工程结合(也许是网络编程),然而 unix 网络编程、unix 环境高级编程这种书太厚了实在是不敢去学(从小不爱读文字),请教各位 v 友这种情况该怎么提高呢?
    20 条回复    2020-04-30 09:55:03 +08:00
    owwlo
        1
    owwlo  
       2020-04-29 02:35:50 +08:00   ❤️ 1
    我是工作之后才开始“真正”学习并使用 c++的,到现在已经快 5 年了,而且如果只说 c++的话直到现在在工作上解 bug 或看别人的代码依然会时不时的发出“卧槽原来还可以这样!”的惊叹。
    作为一个跟你的计划经历相似的人(肉翻读研+leetcode+工作……),一些小小的建议(当然只是建议哈~每个人的情况都或多或少的不一样,只是希望对你有点帮助;)):
    * 对付大厂面试性价比高的方式是刷题+练习口语
    * 小公司才可能多一点会看你自己做出了什么项目,可不可以展示
    * c++对于刷题和做项目成本太高,python 和 java 作为第一和第二选择应该会比 c++好很多
    Procumbens
        2
    Procumbens  
       2020-04-29 03:04:27 +08:00   ❤️ 1
    Procumbens
        3
    Procumbens  
       2020-04-29 03:08:19 +08:00   ❤️ 5
    @owwlo 其他都同意,不过个人认为 C++刷题的成本并不高。常用的数据结构( vector, set/unordered_set, map/unordered_map, stack, queue, priority_queue ) C++都有,最多就是 String 的 split, join 等处理起来稍微复杂些。我个人更喜欢用 C++写 LeetCode 。
    msg7086
        4
    msg7086  
       2020-04-29 06:18:19 +08:00 via Android
    之前看了 feisty2 大大写的 C++20 的项目,感觉直接颠覆了我对 C++的理解了…
    MintZX
        5
    MintZX  
       2020-04-29 06:51:53 +08:00   ❤️ 1
    你这个问题让人很不理解你的目的是什么?

    你是为了掌握高级 C++技术吗?

    C++ Prime -> Effective Modern C++ -> The C++ Standard Library -> C++ Templates

    你是为了出国以后找工作吗?

    那跟 C++没关系,国外 C++的职位不多,学一门 python JS 这样的语言然后去做题不香吗?

    人家都测试一遍过了你还在那想 STL 的 reverse 是怎么引用的

    而且国外公司不在乎你用什么语言面试,你把题做出来就行。

    除了银行金融系统类的公司没见过几个要求会 C++的,而且大多数都是要求 5 年+经验的 C++开发。
    watzds
        6
    watzds  
       2020-04-29 07:14:31 +08:00 via Android   ❤️ 1
    我 C++学了多年,还是找了 java 工作
    你不如多学学 Go 和相关生态,不好吗
    GPLer
        7
    GPLer  
       2020-04-29 07:18:29 +08:00 via Android
    @Procumbens +1,C++ 刷题成本能算高,那纯 C 算啥。
    hello2060
        8
    hello2060  
       2020-04-29 07:37:30 +08:00   ❤️ 1
    既然要做后端还抱着 c++不放干啥,FLAG 招聘也不会限定你的语言。
    tianshilei1992
        9
    tianshilei1992  
       2020-04-29 08:11:17 +08:00   ❤️ 5
    C++ 这个东西的学习曲线还挺大的我觉得…我研究生期间几乎把所有的 C++ 经典书籍(大概 18 本)全看了,才慢慢有了一点感觉。然后就开始了实习、工作,又辞职肉翻当科研狗…当时在公司的时候给 Chainer ( MKL-DNN )、TensorFlow 还有 LLVM 贡献代码,阅读了大量的 C++ 代码(得搞明白了才能下手嘛),然后现在读博还在继续给 LLVM 贡献代码。在这期间呢,就经常能回忆起以前书上的一些知识点来,而当时读的时候并没有觉得怎么样。这还是我能记住的,没记住的肯定就更多了。由于现在做编译器,所以得对语言更加了解,就又开始跟最新的标准…漫漫长路啊…
    laike9m
        10
    laike9m  
       2020-04-29 08:12:49 +08:00 via Android   ❤️ 4
    没事,等你再学五年 C++,会发现不懂的比现在还多🐶
    May725
        11
    May725  
       2020-04-29 08:33:26 +08:00 via iPhone
    @tianshilei1992 配合上头像,一看就是大佬
    May725
        12
    May725  
       2020-04-29 08:34:02 +08:00 via iPhone
    @May725 🐶
    dearmymy
        13
    dearmymy  
       2020-04-29 09:10:31 +08:00   ❤️ 1
    你水平已经蛮厉害了。既然打算考研我觉得就不必要刷题了。我觉得你可以看看设计模式,让你老大推荐一个开源 c++项目,自己跟着敲一边,理解下
    paoqi2048
        14
    paoqi2048  
       2020-04-29 10:26:57 +08:00
    可以看下 C++11/14/17
    tianshilei1992
        15
    tianshilei1992  
       2020-04-29 10:27:40 +08:00
    @May725 甭管技术到不到位,头型一定得先到位不是 🐶
    watzds
        16
    watzds  
       2020-04-29 13:30:09 +08:00 via Android
    autogen
        17
    autogen  
       2020-04-29 19:52:39 +08:00
    用 C++做一个网络课堂网站+APP ?
    Noobs
        18
    Noobs  
       2020-04-30 00:36:54 +08:00 via Android   ❤️ 1
    不要为了学而学吧,看你以后工作内容再决定深入了解哪门语言吧。应届刷算法更有性价比吧。
    fishCatcher
        19
    fishCatcher  
    OP
       2020-04-30 01:43:03 +08:00 via iPhone
    @autogen 雷课堂可还行
    coderEOS
        20
    coderEOS  
       2020-04-30 09:55:03 +08:00 via Android
    找感兴趣的优质开源项目,能看懂一半就行,然后试着做自己的项目,学习 代码管理、接口封装、类抽象、设计模式。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2821 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 06:21 · PVG 14:21 · LAX 22:21 · JFK 01:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.