了解这些C++经常使用库,或许可以帮你找到合适的我的项目!

“ 缺项目的校招同窗,或许能够从经常使用库或框架中寻找可以实现我的项目的题目。”web

文 | Amazing
图 | Amazing面试

在求职的时候,简历上项目会直接影响可否得到笔/面试机会。可是部分同窗在书写简历的时候,每每都以为没有项目可写。或者是求职岗位与本身的经历不太相符,不知道应该根据岗位补充些什么些项目。算法

了解这些C++经常使用库,或许可以帮你找到合适的我的项目!

我本身在补充项目经验的时候,会先从本身的熟悉编程语言出发,而后寻找一些比较常见的库或框架,而后利用这些库去试着作一些好玩的小项目。有精力的话会去仔细研读一些比较好的库源代码,了解实现的机制和原理。更深层次的能够参考知名库,而后能够试着本身写一个相似的库。毕竟对于没有实际大型项目经验的学生来讲,造轮子更是能力的体现。数据库

因此本文将把我所熟知的一些比较C++相关的类库以及一些面向初学者的小工具推荐给你们看看,但愿你们可以从中找到补充本身项目经验的方向。编程

常见C++库和框架安全

C++ Standard Library
C++标准库,经常使用的函数以及库基本都出自这个库,也是C++ISO标准的一部分.目前比较流行使用的是C++11标准,也有更新的C++14,C++17标准。每一个标准都有版本独特的新特性。服务器

Standard Template Library
标准模板库STL,提供了C++经常使用的模板类和函数,富含十分流行和经常使用的算法和数据结构。STL创始人可能都没有想到,STL如今最经常使用的场景竟是在算法竞赛和算法刷题中。websocket

Boost
一样是大量C++库的集合,下一代标准的新特性每每会出自于Boost中。网络

Qt
跨平台的应用程序和用户界面框架,应该是最广为人知的图形库了,可以很容易的创建图形程序,同时附带十分丰富的开发文档,可以用于快速开发桌面界面应用。数据结构

QCustomPlot
一个基于Qt的绘图控件,能够很简单的画出各类曲线和图谱,对于通常用户来讲上手十分容易。

ROOT
一个用于数据处理和分析的框架,常在科研机构中被使用。

MFC
微软封装的一个Windows API库,可以很方便的创建桌面应用。

Boost.Asio
一个经过异步操做完成网络和底层I/O编程的跨平台的C++库。Asio的争议挺多的,有人以为写得不容易,也有人以为性能不够好。

Muduo
陈硕编写的,是一个用于Linux多线程服务器的C++非阻塞网络库。这是一个比较高质量的基于Reactor网络库,代码十分简洁,很是适合初学者阅读学习。

WebSocket++
基于C++/Boost Aiso的websocket 客户端/服务器库。

OpenMP
一个可用于并行计算的框架,可直接在代码中添加比较简单的指令来实现程序的并行化,大大下降了并行编程的难度和复杂度。

OpenSSL
一个可实现安全通讯以及加密的开放源代码库,普遍应用在网页服务中上。

SQLite
一个轻量级的关系数据库,只有几百KB,能够正确嵌入到你的项目中。

Cocos2d-x
一个开源的移动2D游戏框架,能够构建2D游戏,互动图书,演示和其余图形应用程序,同时可以跨平台使用。

OpenCV
很是流行和热门的开源计算机视觉类库,实现了大量图像处理和计算机视觉方向上的通用算法。

VTK
一个用于三维计算机图形学,图像处理和可视化的开源免费软件系统。

ITK
一个开源的、跨平台的开源图像分析系统,与VTK相结合一般用于医学影响的可视化和分析处理。

Geant4
粒子探测器模拟引擎,在高能物理或核物理的仿真计算中常常用到。

FFmpeg
一个用来记录、转换数字音频、视频,并能将其转化为流的开源程序,可很是简单的经过这个软件对视频进行常见操做。

FreeImage
一个免费开源的图像处理库,支持如今多媒体应用所需的通用图片格式和其余格式。

常见编译器

Clang
由苹果公司开发。

GCC
GNU编译器集合。

Microsoft Visual C++
MSVC,由微软公司开发。

集成开发环境

Code::Blocks
免费的跨平台集成开发环境。

Microsoft VisualStudio
自微软的集成开发环境,应该是目前Windows系统下最流行的IDE。

Qt Creator
于Qt框架的跨平台的C++开发环境。

CMake
跨平台的免费开源软件用于管理软件使用独立编译的方法进行构建的过程。

文本编译器

Visual Studio Code
微软2017年推出的一个轻量但功能强大的跨平台源代码编辑器,提供及其强大的扩展插件和功能,业界口碑极好。

VIM
全键盘操做,脱离鼠标。熟练使用起来效率奇高。不过初学者入门稍难,有耐心者可用。

Notepad++
Windows下的免费开源编辑器,十分小巧。

UltraEdit
以前比较经常使用的编辑器,功能很强大,但貌似要收费。

Sublime Text
界面好看,具备很是丰富的快捷命令和扩展插件,我我的经常使用。

以上包含的C++经常使用库,各类类别的都有。对于C++初学者而言,能够从这些类库中寻找感兴趣的库进行使用以及深刻研究。

而对于缺项目的校招同窗而言,也能够从这些库中寻找可以实现我的项目的题目。好比比较常见的项目可参考如下方向:

  1. 仿muduo,实现我的网络库
  2. 基于Qt,QCustomPlot,OpenCV等库实现图像分析处理系统
  3. 基于FFmpeg实现视频流处理
  4. 基于Asio网络库实现聊天室
  5. 基于各类网络库实现网络服务器/web服务器/http服务器等
  6. 基于经常使用库实现文件操做和处理软件等
  7. 文件压缩加密、解压解密等处理
  8. 基于Cocos2d-x或unity3d实现小游戏制做
  9. 简单的日志系统
  10. 等等了…

了解这些C++经常使用库,或许可以帮你找到合适的我的项目!

若本文对你有些许帮助,底下点个赞可好0.0。

了解这些C++经常使用库,或许可以帮你找到合适的我的项目!

推荐阅读(点击下方连接便可阅读)

建议简历写很差的同窗进来瞧一瞧~生物专业却能签约字节跳动,在大学期间他经历了什么生物专业女生教你准备两个月签约AI独角兽想成为BAT后台开发工程师,这些是基础!

相关文章
相关标签/搜索