导航
课程首页
  • PM-Summit 全球产品经理大会云会员
  • SDCon 全球软件研发技术大会云会员
  • ML-Summit 全球机器学习技术大会云会员
  • C++性能优化高端培训
  • AI全栈开发实战营
精品课 极客时间

C 知道

登录
会员中心
消息
历史
创作中心
创作
学习中心
成为讲师

2023 C++零基础入门视频教程

2023 C++零基础入门视频教程
共165节 1477人在学 课程详情
课程目录
讨论留言
  • C++ 导学

    • 课程介绍
    • C++ 简介
    • C++ 标准介绍
    • C++ 学习资料推荐
  • C++ 开发环境搭建

    • virtual box虚拟机安装ubuntu server
    • ubuntu server静态ip和samba设置
    • vs code连接ubuntu server编写C++代码
    • windows ubuntu子系统安装
    • windows ubuntu子系统安装2
    • VS2022 C++环境安装与使用
    • copilot插件安装与使用
    • C++程序结构与编译运行
    • C++程序编译优化选项说明
    • C++代码规范
  • C++ 基础

    • 标识符与基础数据类型
    • 变量声明、局部变量、全局变量、变量地址
    • 输入与输出
    • 基本运算符
    • 自增与自减
    • 类型定义与宏
    • 类型转换
  • 循环控制

    • if、for、while、do while
    • switch选择
    • go to跳转
  • 数组

    • 数组的基本概念
    • 二维数组
    • 数组练习题1
    • 数组练习题2
    • C++数组练习题3
    • 数组练习题4
  • 指针与引用

    • 指针的基本概念
    • 指针crash问题处理
    • 指针与const
    • C++引用介绍
    • C++指针与引用的区别
  • 字符编码与字符串

    • 字符编码介绍
    • 字符char与wchar_t
    • 字符串使用介绍
    • 字符数组与字符串数组
    • 字符串的输入与输出
    • 字符串格式
    • 字符串操作系列函数讲解
    • 字符串练习题
  • 程序内存管理

    • 内存申请与释放介绍
    • C语言内存申请与释放相关函数介绍
    • C语言内存操作函数介绍
    • 内存池技术介绍
    • C++ new与delete使用介绍
    • 二级指针
    • malloc, free, new,delete的异同点
  • 函数

    • 函数的声明与调用
    • 函数形参、实参、副本
    • 数组做函数参数
    • 指针传参和引用传参
    • NULL和nullptr做函数参数的区别
    • C语言变参函数介绍
    • 函数参数加const
    • 函数指针
    • 内联函数
    • C++全局函数
    • C语言全局函数
    • static修饰全局函数
    • vs2022创建多文件多目录项目1
    • vs2022创建c/c++多文件多目录项目2
    • vs2022 C项目目录配置
    • linux下C语言编译的四个步骤介绍
    • linux makefile构建多文件多目录C项目
    • linux cmake构建多文件多目录C项目
    • 习题1:字符串相关题目
    • 习题2:递归
    • 习题3:动态规划
    • 习题4:贪心算法
  • 结构体

    • 结构体的定义与赋值初始化
    • 结构体指针与结构体做函数参数
    • 结构体数组
    • 结构体内存对齐
    • 练习题
  • C++类与对象

    • 名字空间namespace
    • C++函数重载
    • C++类声明与使用介绍
    • vscode linux c++代码调试
    • 类构造函数(一):无参和有参构造函数
    • 类构造函数(二):深拷贝和浅拷贝
    • 类构造函数(三):移动构造函数
    • 类构造函数(四):委托构造函数
    • 类构造函数(五):explicit显示构造函数
    • 特殊构造函数:赋值运算符
    • 类析构函数
    • 类数据成员,成员函数,static与const
    • C++ 三种继承方式
    • C++ 如何防止类被继承
    • 多继承,钻石继承,虚继承
    • 虚函数,纯虚函数,多态,虚表
    • C++ 内存结构介绍
    • 友元函数与友元类
    • 运算符重载
    • C++ 类练习题
    • linux c++程序内存泄漏排查
  • 模板元编程

    • 函数模板
    • C++ 宏与模板的区别
    • 类模板
    • 元编程
    • decltype关键字介绍
    • C++反射1
    • C++反射2
  • 智能指针

    • C++智能指针介绍
    • shared_ptr的基本用法
    • shared_ptr循环引用与解决办法
    • shared_ptr移动语义
    • shared_ptr返回自身
    • 智能指针的get方法及其陷阱
    • weak_ptr用法介绍
    • unique_ptr用法介绍
    • C++智能指针自定义删除器的四种写法
    • 智能指针make系列函数介绍
    • 智能指针make与new的区别
    • C++智能指针make系列函数缺陷说明
    • C++智能指针如何管理数组
    • 多线程程序中如何使用智能指针
    • webrtc中的智能指针
    • 用C++实现一个智能指针类
  • C++ 标准库学习

    • C++ 标准库介绍
    • 自定义迭代器
    • 仿函数
    • C++字符串类介绍
    • C++ STL array使用介绍
    • C++ STL vector用法介绍
    • C++ STL stack用法介绍
    • C++ STL list用法介绍
    • queue、deque和priority_queue
    • map用法介绍
    • multimap、unordered_map
    • set用法介绍
    • 元组tuple用法介绍
    • 标准库常用算法介绍
    • 其它C++开源库介绍
    • STL练习题
  • C++ 新标准知识点串讲

    • C++四种类型转换
    • auto关键字介绍
    • lambda表达式介绍
    • 左值、右值、左值引用、右值引用
    • 移动语义
    • std::forward完美转发
    • std::function
    • std::bind
    • 结构化绑定
    • 名字空间嵌套
    • 程序异常处理
  • 文件操作

    • C语言文件操作介绍
    • C++文件操作介绍
    • json、xml、log等开源库介绍
  • C++ 11多线程

    • 多线程介绍
    • C++ 11 thread基本用法介绍
    • std::this_thread相关函数介绍
    • 线程原子操作
    • 线程互斥
    • 线程锁lock_guard和unique_lock
    • 条件变量condition_variable
    • future、async、promise
    • packaged_task
    • C++ 11线程池
    • C++协程
    • C++并行编程
  • C++项目介绍

    • C++项目与职业介绍
  • 课程总结

    • C++基础课程总结
播放页问题反馈
视频学习中有任何产品建议都可由此反
馈,我们将及时处理!

课时介绍

C++ STL提供了三种队列queue、deque和priority_queue

课程介绍

本课程是C++零基础入门课程,一共19个大章节,课件内容大概10万字,会尽量详细系统的把C++讲清楚,由于C++有一部分知识点和C语言重合,本课程也附带讲解C语言的知识点,学习本课程是同时掌握两门语言,前10章是C和C++的共同部分,如果出现二者的区别会分开讲解。

本课程不会盲目的讲解C++语法,将会和Google开源C++项目WebRTC结合,介绍C++在实际项目中的应用,在部分章节会提供相应的算法题目巩固本章节的内容。

除了C++的学习,本课程会提供一些软件开发的经验、方法,让大家少走一些弯路。

C++虽然难学,但是也不是学不会,掌握好了C++,学习其它语言将会更轻松、愉快。

课程章节内容概述

第1、2、3、4、5章节作为C/C++基础,主要以理解为主,可以花费较少的时间;第6~~10章节讲解指针、内存管理、函数,需要多理解练习;第11章是C++的核心,类与对象;第12章,讲解C++的精华部分模板元编程;第13章节讲解C++的智能指针,这是C++程序设计的重要技术,需要多理解、练习;第14章C++标准库,以应用为主会稍微简单些;第15章介绍C++新标准中比较实用的知识点,会比较难,不好理解,需要勤加练习;第16章文件读写以练习为主,较简单;第17章多线程以理解练习为主,可以参考开源项目学习、应用。第18、19章主要是C++领域介绍,职业选择,C++学习方法推荐。

第1章是C/C++历史、版本介绍、C++难点痛点分析、学习网站推荐、书籍推荐。

第2章介绍C++开发环境搭建以及项目构建方法,调试方法,这是C++学习的第一步,是很关键的一步;本章主要介绍三种开发环境的安装与项目构建方法:

(1)Windows Visual Studio C++ 开发环境;

(2)Virtual Box虚拟机ubuntu C++ vscode ssh开发环境;

(3)Windows WSL : windows linux子系统。

课程会同时介绍在windows和linux下的C++开发,windows以vs2022为开发环境,linux以ubuntu vscode ssh gcc g++为代码编写环境。

第3章是C++入门知识点讲解,数据类型,变量、输入输出、运算符等,该部分以理解记忆为主,可以快速学完。

第4章讲解循环控制,if、for、while、do while、go。

第5章是数组,讲解一维数组,二维数组,并提供了一些练习题,供学习巩固。

第6章是指针与引用,该部分是C/C++学习的难点,也是众多C/C++程序员的噩梦,指针与引用内容是函数的基础,因此提到前面来。

第7章讲解字符串,字符串是一个很复杂的数据类型,在C++中更是复杂,由于C++应用范围广,几乎每个C++框架都有自己的字符串实现方式,C++的字符串因此至少有十多种表现方式,因此我考虑把字符串作为单独章节,让大家在以后的开发中增加对字符串的理解。

第8章是内存分配,独立分配释放内存,也是C/C++区别其它语言的地方,程序员可以直接操作内存,但同时也为程序的编写带来了难度,内存管理不好,很容易出现程序无法商用的情况。除了基础的内存分配,本章节也会介绍内存池,为编写高性能C++程序打基础。

第9章讲解函数,有了前面八章的铺垫,编程中的重要成员函数出现了,这一章的内容会稍微难些,要注意理解、练习,章节的最后提供了练习题,供学习巩固。

第10章介绍结构体,在C语言中,结构体应用很广泛,这也是C语言结束的章节。

第11章类与对象是C++的核心,本章的知识会比较多,会详细介绍类的各个知识点,名字空间、函数重载、构造函数、析构函数、深拷贝、浅拷贝、静态函数、继承、虚函数、多态、友元函数、友元类、运算符重载、类内存分析等等。

第12章是模板元编程是C++最难的内容,也是写C++高性能程序的必经之路,模板元编程也是后面智能指针、标准库STL、多线程的基础。

第13章讲解智能指针,会由浅入深的讲解内存分配释放与智能指针的关系,会全面介绍C++智能指针的应用。一个好的C++项目,基本是看不见new与delete,该章节会介绍一部分webrtc中的代码,看看优秀的C++项目是怎么写C++。

第14章是C++标准库,学习C++编程中常用的工具类与算法组件,章节最后也提供了一些算法练习题,需要用到标准库的一些组件类。

第15章讲解C++新标准的一些实用的知识点,该部分知识在实际项目中会用的比较多,也是不太好理解的部分。

第16章介绍文件操作,先介绍文件操作的一些基本函数,然后介绍json, xml文件的操作方法。

第17章是多线程,介绍C++ 11多线程、线程池的用法。

第18章介绍C++开发的相关领域,是很重要的章节,也是以后工作的参考。

第19章课程总结,以及后续学习指导。

推荐课程

信息系统项目管理师自考笔记

李明 · 737人在学

python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

王先生 · 22148人在学

手把手搭建Java超市管理系统【附源码】(毕设)

汤小洋 · 4210人在学

Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

黄菊华 · 791人在学

基于SSM酒店管理系统(毕设)

小尼老师 · 842人在学

java项目实战之购物商城(java毕业设计)

Long · 5157人在学

手把手搭建Java求职招聘系统【附源码】(毕设)

汤小洋 · 1509人在学

Python Django 深度学习 小程序

钟翔 · 2328人在学

城管局门前三包管理系统+微信小程序(vue+springboot)

赖国荣 · 600人在学

Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

李杰 · 3992人在学

正在试验
后自动删除环境
课程实验
本次实验时间已到期 00:00:00

    订阅失败

    2023 C++零基础入门视频教程
    2023 C++零基础入门视频教程 ...

    订阅列表已满,请先移出部分订阅内容。

    当前章节需购买后观看
    开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
    提交答案

    购买课程

    扫码完成付费,可继续学习全部课程内容

    加载中...
    课件正在飞速打包中,请耐心等待几秒钟~
    首页
    博客
    下载
    学习
    社区
    C知道
    GitCode
    InsCodeAI
    技术会议
    会员中心
    创作中心
    联系我们
    工作时间: 8:30 - 22:00
    客服电话: 400-660-0108
    kefu@csdn.net在线客服
    • 关于我们
    • 招贤纳士
    • 商务合作
    • 寻求报道
    • 京ICP备19004658号
    • 经营性网站备案信息
    • 公安备案号11010502030143
    • 营业执照
    • 北京互联网违法和不良信息举报中心
    • 家长监护
    • 中国互联网举报中心
    • 网络110报警服务
    • Chrome商店下载
    • 账号管理规范
    • 版权与免责声明
    • 版权申诉
    • 出版物许可证
    • ©1999-2024北京创新乐知网络技术有限公司