15个C++项目列表_蓝桥云课的博客-程序员秘密_c项目

技术标签: c++  编程语言  

实验楼上有很多C++的实战项目,从简单到进阶,学习每个项目都可以掌握相应的知识点。

  • 如果你还是C++新手的话,那么这个C++的项目列表你可以拿去练手实战开发,毕竟学编程动手实践是少不了的!
  • 如果你不知道C++可以用来做哪些项目,可以应用在哪些地方,那么,这个项目列表拿去吧,可以看看C++可以做什么!

* C++项目列表:*

1、C++ 实现太阳系行星系统

项目使用 C++实现 OpenGL GLUT 实现一个简单的太阳系行星系统,将涉及一些三维图形技术的数学基础、OpenGL 里的三维坐标系、OpenGL 里的光照模型、GLUT 的键盘事件处理。

效果图

2、C++实现运动目标的追踪

这个项目是在前面一个项目的后续项目,利用 OpenCV 来实现对视频中动态物体的追踪。

3、C++ 实现银行排队服务模拟

项目使用 C++对银行排队服务进行模拟,以事件驱动为核心思想,手动实现模板链式队列、随机数产生器等内容,进而学习概率编程等知识。作为可选进阶,这个模型同时还能稍加修改的应用到 CPU 资源争夺模型中。

4、1小时入门增强现实技术

项目利用C++,基于OpenCV实现一个将3D模型显示在现实中的小例子,学习基于Marker的AR技术。

效果图

一个踩着魔鬼的步伐的漆黑的食人魔

5、100 行 C++ 代码实现线程池

项目使用 C++ 及大量 C++11新特性设计并实现一个线程池库。

6、C++实现第一人称射击游戏

项目使用C++和 OpenGL 实现一个第一人称射击类游戏,涉及键盘鼠标的处理、三维视角变换处理、素材加载渲染等。

7、C++三段代码机器绘图

用三段 140 字符以内的代码生成一张 1024×1024 的图片。

效果图

8、C++ 开发 Web 服务框架

服务器开发中 Web 服务是一个基本的代码单元,将服务端的请求和响应部分的逻辑抽象出来形成框架,能够做到最高级别的框架级代码复用。项目将综合使用 C++11 及 Boost 中的 Asio 实现 HTTP 和 HTTPS 的服务器框架。

9、C++ 打造 Markdown 解析器

Markdown 几乎成为了程序员编写文档的标配,Markdown 的相关语法简单,解析 Markdown 文本能够加深日后编写编译器中词法分析的理解,本项目将使用 C++ 实现 Markdown 解析器,并将解析的内容生成为 HTML。

效果图

10、C++ 实现高性能内存池

获得内存池所分配的内存速度高于从堆中获得分配的内存的速度,一个长期稳定运行的服务在追求极致的过程中,实现内存池是必不可少的。和标准库中的默认分配器一样,内存池本质上也是分配器,该项目将设计并使用 C++实现一个高性能内存池。

11、C++ 实现简易 Docker 容器

Docker 的本质是使用 LXC 实现类似虚拟机的功能,进而节省的硬件资源提供给用户更多的计算资源。本项目将 C++ 与 Linux 的 Namespace 及 Control Group 技术相结合,实现一个简易 Docker 容器。

12、C++ 实现内存泄露检查器

内存泄漏一直是 C++ 中比较令人头大的问题, 即便是很有经验的 C++程序员有时候也难免因为疏忽而写出导致内存泄漏的代码。除了基本的申请过的内存未释放外,还存在诸如异常分支导致的内存泄漏等等。本项目将使用 C++ 实现一个内存泄漏检查器。

效果图

13、C++ 使用 Crypto++ 库实现常用的加密算法

该项目利用 Cryto++库 对字符串进行 AES 加密和解密,RSA 加密和解密,生成 MD5 值。其中主要用到了 Crypto++ 库,这是开源的C++数据加密算法库,支持如下算法:RSA、MD5、DES、AES、SHA-256等等。

14、C++ 实现高性能 RTTI 库

RTTI 是运行时类型信息的英文缩写,C++ 本身提供了运行时类型检查的运算符 dynamic_cast 和 typeid,然而 dynamic_cast 的效率其实并不理想,需要牺牲一定性能。本项目将手动实现一个高性能 RTTI 库。

效果图

15、c++操作 redis 实现异步订阅和发布

该项目操作 redis 实现异步订阅和发布,其中将介绍 redis 基础知识,在linux中安装和使用 redis ,常用的 hiredis API,并实现一个例程。

以上都是可以用C++来实现的,所以,还在等什么?快去动手开发吧!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/shiyanlou_chenshi/article/details/53411402

智能推荐

elasticSearch 用head 新增数据;和排序查询 sort ;queryshardexceptiong:failed to find geo_point field [查不到的字段名称]_es-head 排序_西方契约的博客-程序员秘密

es查询报 字段不存在 错误queryshardexceptiong:failed to find geo_point field [查不到的字段名称]解决办法就是在 查询的索引中新增 一个字段数据就行:新增后查询结果为:使用 head 用某字段进行排序查询: 查询后缀 _search ;post请求;sort 为排序的信息;示例以 modTime...

Linux cron 计划任务日志跟踪_javawebsoa的博客-程序员秘密

场景:  需要在系统的cron中启动一个计划任务,跑的是一个shell脚本,脚本中大致意思是切换至        abc用户执行一个php文件(例如: /data/soft/auto.php),那么现在问题来了,脚本的内        容如下:          1234#!/bin/bash

JuggerNET R1.1_weixin_30897079的博客-程序员秘密

http://www.codemesh.com/en/JuggerNETCurrentRelease.html JuggerNET R1.1 JuggerNET, Codemesh's newest language interoperability product, is the s...

注解@PostConstruct与@PreDestroy详解及实例_程序新视界的博客-程序员秘密

简介Java EE5 引入了@PostConstruct和@PreDestroy这两个作用于Servlet生命周期的注解,实现Bean初始化之前和销毁之前的自定义操作。此文主要说明@PostConstruct。API使用说明以下为@PostConstruct的API使用说明: PostConstruct 注释用于在依赖关系注入完成之后需要执行的方法上,以执行任何初始化。此方法必须在将类放入服务之

低配终端环境下如何模拟大规模负载_xreztento的博客-程序员秘密

低端终端环境下如何模拟大规模负载的优化方法探讨

f数--仓_清风徐来水波不兴fate的博客-程序员秘密

环境准备1.1虚拟机准备克隆三台虚拟机(hadoop101、hadoop102、hadoop103),配置好对应主机的网络IP、主机名称、关闭防火墙。设置hadoop102、hadoop103、hadoop104的主机对应内存分别是:4G、4G、4G1.2配置免密登录配置ssh免密登录[[email protected] ~]# vim /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4...

随便推点

二叉树相关操作(先序建立二叉树、求子节点数量,判断是否为平衡二叉树,先序遍历,中序遍历,后序遍历)_coderwjh的博客-程序员秘密

#include#include#include#define tlen 100typedef struct BiTnode{ int data; struct BiTnode *lchild,*rchild;}BiTnode,*BiTree;/*******************************树相关操作***********************

python 调用com_Python环境下使用COM接口教程_weixin_39834090的博客-程序员秘密

事情就是从2016年12月的一个普通下午开始的,当时的问题是:传统工业如何跟这个时髦的词汇联系在一起呢?首先要从数据入手,这一条表面上看是可以满足的,因为当前的炼化企业大多都实现了关键工艺点的在线仪表监测,并且每五分钟记录一次数据,多年来收集到的各种数据量已经积累到了一定程度,而且数据库支持在线取数。目前对于这类数据的挖掘程度并不高,那么是否可以将其利用起来呢?但是现场数据也有其缺点,首先,虽然五...

JAVA框架——MyBatis总结(一)Mapper文件详解,原始Dao层开发,动态代理方式_桂大叔的博客-程序员秘密

一、 Mybatis介绍它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。Mybatis通过xml或注解的方式将要执行的各种statement(statement、preparedStatemnt、CallableStatement)配置起来,并通过java对象和statement中的sql进行映射生成最终执行的sql语句,最后由mybatis

手把手教你撸一个网页聊天室_weixin_33739541的博客-程序员秘密

一些废话:)最近在学校比较闲,终于有这么一块时间可以自由支配了,所以内心还是十分的酸爽舒畅的。当然了,罪恶的事情也是有的,比如已经连续一周没有吃早饭了,其实现在回头想想,真的不能怪我啊,因为最近的天气实在是太!冷!了!好吧为了减少赖床的罪恶感,还是学(gǎo)点(diǎn)东(shì)西(qing)好了。不说废话了,还是进入正题。进入...

ZY Player for Mac(影视观影神器) v2.7.2中文版_Mac_sousousou的博客-程序员秘密

ZY Player for Mac一款非常受欢迎的影视观影神器,ZY Player免费版内置多个资源站,能够为用户提供电影,电视剧,综艺,动漫,音乐等多种资源视频。ZY Player for Mac安装教程在本站下载完成后打开,将左侧的ZY Player拉到右侧应用程序中即可。ZY Player免费版功能特色全平台支持. windows, mac, linux.12个视频源. 未来更新更多的视频源.新增历史播放记录, 并记录播放进度.新增分享功能. 一键分享海报图片.新增精简模式. 支持修改

基于SSM+Eclipse+MySQL的球鞋商城(SSM毕业设计源码)(SSM在线商城)_那条学长V的博客-程序员秘密

项目类型:JAVA WEB项目(B/S架构)项目名称:基于SSM的球鞋商城用户类型:2个角色(管理员+购物者)系统类型:前端购物界面+后台管理设计模式:SSM界面外观:未使用框架(CSS+JS)开发工具:Eclipse数据库:Mysql+Navicat数据库表:10张适用:软件工程、计算机科学与技术等作者介绍:计科学长,免费指导降低查重,定期发布高质量手工开发源码,提供课程设计和毕业设计的指导!双1流高校刚毕业的学长,曾经也是个小白!关注回复 学生 免费get一套J...

推荐文章

热门文章

相关标签