C++ 能用来做什么?八大就业方向分析

yumo66616小时前技术文章1

微信搜「 后端技术学堂 」程序员学习课堂,回复「1024」获取 50 本计算机编程学习电子书,回复「路线」获取最全面技术学习路线思维导图

前段时间在知乎上,回答了一个关于C++学习方向的问题,我觉得学习C++之前知道方向非常重要,这样就更能加有目标的去学习。

回答原文:
https://www.zhihu.com/question/26248074/answer/1658906364

注意到题主是大二的同学,有这样的困惑很正常。

其实能想到这个问题,已经领先一部分 C++ 初学者了!带着目标去学习,是非常高效的学习方式。

C++就业方向

C++太强大了,能做的方向很多,我大概罗列一下,包括但不限于以下方向:

  • C++服务器后台开发(流媒体后台,游戏后台,高性能服务器后台)

精通C++,STL,Linux等,熟悉设计模式;熟悉常用数据结构和算法。

  • 应用开发工程师(QT和MFC,偏前端)

熟练掌握C,C++,ATL,COM等编程技术,Windows系统编程熟悉窗口,网络和多线程技术。

  • C++游戏开发(游戏方向,熟悉游戏引擎cocos2dx等)

熟悉Win32API,WIN32/VS开发平台,C++开发库(STL/MFC/QT等),常用数据结构和算法;精通C++编程,精通网络编程,熟悉游戏服务器端架构和客户端代码、熟悉数据库开发。

  • C++逆向开发工程师(网络安全,破解等)

熟练掌握C/C++,精通汇编语言,有较强的程序反汇编技术和逆向分析能力;熟悉PE文件格式,数显掌握Softlce、IDAPro、OllyDebug,WinDBG等调试、逆向工具。

  • 智能硬件和可穿戴设备(智能硬件VR/C++)

熟悉网络编程和多线程编程,掌握C/C++,精通3D图形引擎开发,深入了解对图形学知识,熟练使用DirectX、OpenGL或Metal。

  • 嵌入式软件工程师(C/C++,Linux平台,软硬兼施)

熟练操作Linux系统,C/C++语言以及相关的编译和调试技术,精通Linux平台相关驱动开发技术,精通bootloader移植、内核剪裁等技术。

  • 音视频解码(协议优化)

熟悉C/C++开发语言:WINDOWS PC客户端软件开发,熟悉掌握OpenCV中图像/视频算法;能熟练阅读英文算法及其他技术文档。

  • 图像处理(机器视觉,医学图像,遥感图像,人像{美颜}等)

精通C/C++,熟悉Linux下的编程,熟悉OpenCV以及ROS,SLAM,TLD等相关系统和技术。


以上 8 个方向是 C++ 能做的主要工作方向,可以看到用途非常广泛,但其实在工作中,人的精力是有限,大部分人只能在一个方向上发力。

C++基础学习

C++是一门高级程序设计语言,又不像Python 和Java 那样高级,C++还更偏向底层一些,下面这些是C++的基础内容,单纯的 C++基础需要学什么

  • 面向对象的特性,封装、继承、多态
  • 堆和栈的区别,mallocl和new的区别
  • 虚函数、虚函数表,对象内存布局
  • 重载Overloading和覆盖Overriding
  • 引用与多态的关系
  • 派生类中构造函数与析构函数,调用顺序
  • 析构函数、构造函数
  • 模板类,泛型
  • 结构体内存对齐方式
  • 指针和引用
  • static关键字作用
  • 虚表,基类的虚表是什么样的,派生类虚表,单继承、多继承、菱形继承
  • #define与const的区别
  • volatile 关键字
  • C++中的强制类型转换:reinterpret_caststatic_castconst_cast
  • 析构函数中抛出异常时概括性总结
  • C++1X、C++20 新特性

以上差不多是C++基础需要学习的内容,当然,如果感觉C++基础学的还有些吃力,特别是初学者,建议可以跟着老师视频学习,这里推荐浙大翁恺老师C++面向对象程序设计,网易云课堂17.1万人学过了,你可以配合C++ Primer +视频学习。

感谢阅读到这里的同学,祝大家都能拿到满意 offer~

读者福利

新年新气象,感谢各位读者大大对 @程序员柠檬橙 一年以来的关注和支持!

微信红包封面送给大家,数量有限,比手速拼运气,手慢无哦!

另外,牛气好运分享给更多小伙伴,祝大家新年牛气冲天~

领取方式:私信@程序员柠檬橙 发送:【666

往期精彩文章

面试不懂 Linux 内存管理?我用 20 张图给你讲明白

这个大学在Github开源了计算机课程,看完在家上个 985

全网最全总结,如何高效学习C++软件开发(详细书单)


私信@程序员柠檬橙 发送 「1024」 获取编程学习资源,若有帮助,请点赞转发支持一下~

我是@程序员柠檬橙关注我,学习更多编程知识!

点击下方「了解更多」下载学习资源

相关文章

测试人看的第一本书——《计算机软件测试》PDF高清版

马上年关了,2021年即将过去。回望这一年,你升职加薪了没?技术有提升没?不要日复一日的重复着当前的工作,拿着年初一样的薪资。是否感觉升职无望,跳槽涨薪没底气,技术没有一点提升?万丈高楼平地起,基础没...

程序员必练六项目:从数据结构到操作系统,计算机教授为你画重点

鱼羊 编译整理量子位 报道 | 公众号 QbitAI编程这件事,光有理论是不够的,动手实践是必修课。不过,从什么项目入手,往往让人犯了难。如果你还在纠结,应该拿什么项目来开始自己的编程练习,不妨来看看...

计算机图形学 by闫令琪_计算机科学与技术图形学

光线追踪四: 蒙特卡洛路径追踪本节信息量大,而且有意思。首先,指出之前的whitted-style ray tracing的两个缺点:一个是对glossy镜面的近似处理不准确;二是不考虑漫反射作为间接...

西电计算机系90后博士:5年攻克一个难题,发表论文助力癌症治疗

学子加油【西电计算机系90后博士:5年攻克一个难题,发表论文助力癌症治疗】“不忘初心,砥砺前行,总有柳暗花明的那一刻。我虽然是计算癌症生物学方向的一名小小的研究者,但我很骄傲能通过计算手段为攻克癌症事...

AutoCAD入门教程,编辑、尺寸和图形输出,70页内容介绍CAD操作

AutoCAD操作知识AutoCAD是一款功能强大的计算机辅助设计软件,广泛应用于机械设计、建筑制图等领域。以下是对其基本操作、编辑命令、尺寸标记和图形输出的简要介绍。在AutoCAD中,基本操作包括...

PDFgear——一款接入AI智能化模型的免费PDF聊天软件

一、前言自从Open AI发布的ChatGPT火爆之后,国内外陆陆续续衍生了很多基于GPT大语言模型的API接口开发的小应用,当GPT对于普通的Chat聊天有Token限制,无法输入大文本或者大文件无...