这门课解决的问题是:C++高级工程师不是只会写业务代码,而是能把面向对象思想落到工程架构上——从继承体系设计、虚函数与函数指针的选择,到避免钻石继承、从面向过程到面向对象的过渡,再到多平台环境搭建。它把面试题、工程实战和理论分析串在一起,帮你把散落的C++知识组织成可复用的工程能力。 适合什么基础 有C++基础,写过几段代码,但面对“继承用不用虚函数”“钻…
这门课解决的问题是:C++高级工程师不是只会写业务代码,而是能把面向对象思想落到工程架构上——从继承体系设计、虚函数与函数指针的选择,到避免钻石继承、从面向过程到面向对象的过渡,再到多平台环境搭建。它把面试题、工程实战和理论分析串在一起,帮你把散落的C++知识组织成可复用的工程能力。
有C++基础,写过几段代码,但面对“继承用不用虚函数”“钻石继承怎么破”“如何把面向过程代码重构为面向对象”这类问题时缺乏系统思路的开发者。适合想从“能写代码”提升到“能搭体系、能讲设计”的进阶学习者。
第一块是环境搭建,覆盖Windows、Mac、Linux Ubuntu和QT,这是工程实战的前提;第二块是从面向过程到面向对象的过渡,包括经典面试题分析和理论推导,帮你建立思想转变的清晰认知;第三块是继承体系,少用继承、虚函数与函数指针替代方案、钻石继承的虚继承,这三块直接对应工程中类的设计决策。
能独立搭建C++多平台开发环境,能针对业务场景设计合理的类继承与组合体系,能讲清虚函数、函数指针、虚继承的使用边界和权衡,能在面试或技术评审中清晰阐述面向对象设计原则的落地方式。
课程配套练习环节,建议边看边在本地环境里敲代码复现。重点练习钻石继承的构造顺序、虚函数在多继承中的覆盖行为,以及从面向过程代码重构为面向对象时的拆分策略。每完成一块,对照课程中的工程案例做一次自检,确认设计决策能讲清楚再进入下一块。
01 阶段一:C++面向对象编程在工程实战中的应用
| | ├──[1.1.1.10]--1-10 少用继承及接口继承的使用.mp4 103.85M
| | ├──[1.1.1.11]--1-11 少用虚函数及函数指针代替虚函数的方案.mp4 101.62M
| | ├──[1.1.1.12]--1-12 面向对象编程的两个常见错误理.mp4 47.65M
| | ├──[1.1.1.13]--1-13 C++避免钻石继承的方法--虚继承.mp4 80.82M
| | ├──[1.1.1.1]--1-1 CPP中高级工程师成长体系课导学1.mp4 54.93M
| | ├──[1.1.1.2]--1-2 WindowsC++环境的搭建w.mp4 118.16M
| | ├──[1.1.1.4]--1-4 Linux Ubuntu发行版环境的搭建C++环境的搭建.mp4 148.44M
| | ├──[1.1.1.6]--1-6 HelloWorld从面向过程编程到面向对象编程的过渡.mp4 90.26M
| | ├──[1.1.1.7]--1-7 从微软公司的一道面试题来谈从面向过程到面向对象.mp4 158.48M
| | ├──[1.1.1.8]--1-8 从面向过程编程到面向对象过渡的理论分析.mp4 37.10M
| | └──[1.1.1.9]--1-9 面向对象三大特性及实现一个不能被继承的类.mp4 113.09M
| | ├──[1.2.1.10]--1-10 move语义的意义和使用细节.mp4 97.23M
| | ├──[1.2.1.1]--1-1 怎么实现一个MyString的Class.mp4 93.13M
| | ├──[1.2.1.2]--1-2 Class的321实现.mp4 93.21M
| | ├──[1.2.1.3]--1-3 MyString的move基本实现.mp4 93.31M
| | ├──[1.2.1.4]--1-4 C++面向对象编程基础原则.mp4 8.98M
| | ├──[1.2.1.5]--1-5 再看MyString的构造实现.mp4 65.71M
| | ├──[1.2.1.6]--1-6 防止构造函数的隐式转换类型.mp4 89.52M
| | ├──[1.2.1.7]--1-7 C++的值类型和引用类型.mp4 91.21M
| | ├──[1.2.1.8]--1-8 一些重要概念:左值、右值、左值引用、右值引用等.mp4 113.46M
| | └──[1.2.1.9]--1-9 左值右值相关.mp4 108.52M
| | ├──[1.3.1.1]--1-1 编译器优化与mov的语义的关系及返回值优化.mp4 119.19M
| | ├──[1.3.1.2]--1-2 返回值优化:RVO和NRVO.mp4 57.84M
| | ├──[1.3.1.3]--1-3 返回值优化策略的选择.mp4 100.18M
| | ├──[1.3.1.4]--1-4 const的基本使用.mp4 79.96M
| | ├──[1.3.1.5]--1-5 const的修饰对象的引用和函数.mp4 119.19M
| | 鈹溾攢鈹€[1.3.1.6]--1-6 const銆乵utable鍜寁olatile.mp4 133.28M
| | ├──[1.3.1.7]--1-7 再谈构造函数--什么该做什么不该做.mp4 50.81M
| | ├──[1.3.1.8]--1-8 再谈构造函数--初始化顺序和参数列表.mp4 95.18M
| | └──[1.3.1.9]--1-9 构造函数静态成员变量的初始化.mp4 99.05M
| | ├──[1.4.1.10]--1-10 Lambda表达式和函数对象使用的类比(上).mp4 97.88M
| | ├──[1.4.1.11]--1-11 Lambda表达式和函数对象使用的类比(下).mp4 154.08M
| | ├──[1.4.1.12]--1-12 Lambda表达式的意义.mp4 106.18M
| | ├──[1.4.1.13]--1-13 inline内联函数的使用和本质.mp4 140.93M
| | ├──[1.4.1.2]--1-2 重载函数的本质和实现原理.mp4 102.24M
| | ├──[1.4.1.4]--1-4 Rational类的实现.mp4 95.86M
| | ├──[1.4.1.5]--1-5 Rational类的运算符重载实现.mp4 152.11M
| | ├──[1.4.1.6]--1-6 函数对象的本质是什么(上).mp4 89.04M
| | ├──[1.4.1.7]--1-7 函数对象的本质是什么(下).mp4 121.41M
| | ├──[1.4.1.8]--1-8 函数内部怎么定义函数--lambda表达式.mp4 121.74M
| | └──[1.4.1.9]--1-9 Lambda表达式实现闭包.mp4 207.39M
| | └──{1}--第1章 C++内存分配:堆和栈的详细分析
| ├──{6}--C++智能指针、异常、new及对象模型
| | ├──[1.6.1.10]--1-10 3-new的实现细节,如果new失败了怎么办,工程中怎.mp4 120.15M
| | ├──[1.6.1.11]--1-11 4-new的实现细节,如果new失败了怎么办,工程中怎.mp4 112.74M
| | ├──[1.6.1.12]--1-12 5-new的实现细节,如果new失败了怎么办,工程中怎.mp4 101.85M
| | ├──[1.6.1.13]--1-13 CPP对象模型初步1.mp4 62.39M
| | ├──[1.6.1.14]--1-14 CPP对象模型初步2.mp4 72.71M
| | ├──[1.6.1.15]--1-15 CPP对象模型初步3.mp4 122.08M
| | ├──[1.6.1.16]--1-16 动态多态和静态多态.mp4 117.38M
| | ├──[1.6.1.1]--1-1 怎么实现智能指针.mp4 167.57M
| | ├──[1.6.1.2]--1-2 CPP中常见的智能指针.mp4 182.62M
| | ├──[1.6.1.3]--1-3 CPP中常见的智能指针.mp4 112.33M
| | ├──[1.6.1.4]--1-4 CPP中到底该不该用异常.mp4 78.98M
| | ├──[1.6.1.8]--1-8 1-new的实现细节,如果new失败了怎么办,工程中怎么.mp4 75.75M
| | └──[1.6.1.9]--1-9 2-new的实现细节,如果new失败了怎么办,工程中怎.mp4 109.16M
| └──{7}--实现C++跨平台爬虫实战
| | ├──[1.7.1.10]--1-10 爬虫的数据处理和数据存储2.mp4 183.59M
| | ├──[1.7.1.11]--1-11 爬虫的数据处理和数据存储3.mp4 50.62M
| | ├──[1.7.1.12]--1-12 爬虫的数据处理和数据存储4.mp4 120.69M
| | ├──[1.7.1.13]--1-13 爬虫的数据处理和数据存储5.mp4 196.96M
| | ├──[1.7.1.14]--1-14 爬虫的整体逻辑.mp4 28.16M
| | ├──[1.7.1.15]--1-15 爬虫的测试、存在待改进的问题1.mp4 82.73M
| | ├──[1.7.1.16]--1-16 爬虫的测试、存在待改进的问题2.mp4 103.53M
| | ├──[1.7.1.17]--1-17 爬虫的测试、存在待改进的问题3.mp4 53.17M
| | ├──[1.7.1.1]--1-1 第七周内容更新说明.mp4 6.61M
| | ├──[1.7.1.2]--1-2 爬虫需求分析.mp4 110.53M
| | ├──[1.7.1.3]--1-3 QT的基本使用,工程创建等(1).mp4 48.99M
| | ├──[1.7.1.4]--1-4 QT的基本使用,工程创建等(2).mp4 101.01M
| | ├──[1.7.1.5]--1-5 QT怎么实现一个简单的跨平台爬虫.mp4 112.26M
| | ├──[1.7.1.6]--1-6 爬虫的网络类实现1.mp4 142.48M
| | ├──[1.7.1.7]--1-7 爬虫的网络类实现2.mp4 78.28M
| | ├──[1.7.1.8]--1-8 爬虫的网络类实现3.mp4 232.06M
| | └──[1.7.1.9]--1-9 爬虫的数据处理和数据存储1.mp4 220.06M
02 阶段二:C++面向对象设计模式精讲
| ├──{1}--面向对象设计模式初步及创建型模式
| | └──{1}--第1章 面向对象设计模式初步及创建型模式
| ├──{2}--结构型模式和行为型模式
| | └──{1}--第1章 结构型模式和行为型模式
| └──{3}--STL和设计模式
| | └──{1}--第1章 STL和设计模式
03 阶段三:C++ QT编程
| ├──02 QML编程、文件IO和数据库操作
| | └──01 第1章 QML编程、文件IO和数据库操作
| ├──03 QT正则表达式及多进程多线程编程
| | └──01 第1章 QT正则表达式及多进程多线程编程
| ├──04 项目架构及Kernel部分的开发
| | └──01 第1章 项目架构及Kernel部分的开发
| └──05 UI部分开发
| | └──01 第1章 UI部分开发
04 阶段四:跨平台浏览器项目实战
| ├──01 项目架构及Kernel部分的开发
| ├──02 UI部分开发
| ├──03 浏览器项目DataBase等开发
| | └──01 第1章 浏览器项目DataBase等开发
| ├──04 用户登录和加密部分组件开发
| | └──01 第1章 用户登录和加密部分组件开发
| └──05 自动化测试用例的开发及其他一些特性
| | └──01 第1章 自动化测试用例的开发及其他一些特性
05 阶段五:系统层知识进阶
| ├──01 数据表达底层原理和操作系统、进程和线程
| | └──01 第1章 数据表达底层原理和操作系统、进程和线程
| ├──02 网络编程、国际化和数据库操作
| | └──01 第1章 网络编程、国际化和数据库操作
| └──03 译系原理解析和C++代码优化
| | └──01 第1章 译系原理解析和C++代码优化
158 C++中高级工程师
| ├──00 资料
| | ├──电子书
| | └──项目git
| ├──02 阶段二:C++面向对象设计模式精讲
| | ├──03 STL和设计模式
| | └──04 QT设计模式和爬虫项目的设计模式版本
| └──03 阶段三:C++ QT编程
| | ├──01 QT的基础和UI组
| | └──02 QML编程、文件IO和数据库操作
C++中高级工程师最后一部分
| ├──158 C++中高级工程师 - cn
| | ├──01 阶段一:C++面向对象编程在工程实战中的应用
| | ├──02 阶段二:C++面向对象设计模式精讲
| | └──158 C++中高级工程师
| └──mk-c++ 中高级
| | ├──03 阶段三:C++ QT编程
| | ├──04 阶段四:跨平台浏览器项目实战
| | ├──05 阶段五:系统层知识进阶
| | ├──06 阶段六:C++新特性及就业指导
| | └──课件全
课件
| └──课件全套.zip 38.62M
解压密码:www.ruike1.com——/体系课-C++中高级工程师/├──01 阶段一:C++面向对象编程在工程实战中的应用 | ├──{1}--课程简介、环境准备及面向对象 rk0939-MK-C++中高级工程师【完结】【VIP】 ,瑞客论坛