面向对象的嵌入式软件开发

面向对象的嵌入式软件开发

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

面向对象编程入门书,讲解C++抽象、封装、继承、多态等知识,助读者编写高质量C++代码。

内容简介

本书从开发角度出发,以Linux或者Windows为开发平台,从初学者的角度出发,以面向对象程序设计思想为主线,结合实际项目开发需求,将隐藏在面向对象背后的关于C++抽象、封装、继承、多态等机制和知识娓娓道来,用最通俗易懂的语言讲解知识点,不仅让读者知其然,更要让读者知其所以然,最终让这些知识再反作用于编程实践,从而帮助读者写出高“质”的C++代码。全书涉及了面向对象的方方面面,具体说来,主要讨论了包括面向对象语言的特点、MySQL数据库的应用、QT基础知识入门以及项目开发过程等多个方面的话题。

章节目录

封面

版权页

前言

目录

第1章 面向对象概述

1.1 C++概述

1.1.1 C++的发展

1.1.2 为什么要学习C++

1.2 面向过程和面向对象

第2章 C到C++的扩展

2.1 命名空间

2.1.1 什么是命名空间

2.1.2 命名空间的使用

2.1.3 命名空间完整示例代码

2.1.4 C++标准库和std命名空间

2.2 小程序“Hello World”

2.2.1 输出“Hello World”

2.2.2 C++的输入和输出(cin和cout)

2.3 变量定义的位置

2.4 register关键字的变化

2.5 struct的加强

2.6 三目运算符的加强

2.6.1 C与C++中三目运算符的不同

2.6.2 如何在C语言中实现C++的特性

2.7 bool类型

2.8 C/C++中的const

2.8.1 C中的const

2.8.2 C++中的const

2.8.3 const与define

2.9 C++中的引用

2.9.1 引用的概念与基本使用

2.9.2 引用作为函数参数

2.9.3 引用作为函数返回值

2.9.4 指针引用

2.9.5 常引用

2.9.6 引用的本质

2.10 C++内联函数

2.10.1 内联函数的概念和使用

2.10.2 内联函数的特点和使用限制

2.11 C++函数的默认参数

2.12 C++函数的占位参数

2.13 C++中的函数重载

2.13.1 函数重载的概念

2.13.2 C++函数重载与函数指针

2.13.3 函数重载的二义性

2.13.4 函数重载与const形参

2.14 C++的动态内存分配

2.14.1 new与delete的基本用法

2.14.2 拓展:多维数组的动态创建与释放

第3章 类和对象

3.1 面向对象编程介绍

3.1.1 什么是面向对象

3.1.2 面向对象的优点

3.1.3 面向对象的特点

3.1.4 总结

3.2 类和对象

3.2.1 类和对象的概念

3.2.2 类的访问控制

3.2.3 类的使用案例

3.2.4 面向对象编程实例

3.3 对象的构造和析构

3.3.1 构造函数

3.3.2 构造函数的重载和调用

3.3.3 拷贝构造函数

3.3.4 默认构造函数

3.3.5 析构函数

3.3.6 构造函数的参数初始化列表

3.3.7 对象的动态创建和释放

3.4 浅拷贝和深拷贝

3.4.1 浅拷贝问题分析

3.4.2 深拷贝

3.5 静态成员变量和静态成员函数

3.5.1 静态成员变量

3.5.2 静态成员函数

3.6 C++对象的内存模型

3.6.1 编译器对属性和方法的处理机制

3.6.2 this指针

3.6.3 const修饰成员函数

3.7 友元函数和友元类

3.7.1 友元函数

3.7.2 友元类

3.7.3 友元函数的几点说明

第4章 运算符重载

4.1 概念

4.1.1 什么是运算符重载

4.1.2 运算符重载的使用

4.2 运算符重载的规则

4.3 常用的运算符重载

4.3.1 前置++与后置++的重载

4.3.2 左移<<与右移>>操作符的重载

4.3.3 成员函数与友元函数重载的选择

4.4 赋值运算符=的重载

4.5 数组下标运算符[]的重载

4.6 函数调用运算符()的重载

4.7 new和delete运算符的重载

第5章 继承与派生

5.1 继承的概念及语法

5.1.1 类之间的关系

5.1.2 继承关系

5.1.3 继承的使用

5.2 派生类的访问控制

5.3 继承中的对象内存模型

5.4 派生类的构造函数和析构函数

5.4.1 派生类的构造函数

5.4.2 派生类的析构函数

5.4.3 继承与组合混搭情况下构造和析构调用原则

5.5 继承时的名字遮蔽

5.6 继承中的static关键字

5.7 继承中的类型兼容性原则

5.8 多继承

5.8.1 多继承的概念

5.8.2 多继承中的构造与析构

5.8.3 多继承导致的二义性问题

5.8.4 多继承时的对象内存模型

5.9 虚继承

5.9.1 虚继承与虚基类

5.9.2 虚继承时的构造函数

5.9.3 虚继承时的对象内存模型

第6章 多态

6.1 多态的概念与使用

6.2 虚函数详解

6.3 虚析构函数

6.4 多态的实现机制

6.4.1 多态原理

6.4.2 构造函数中调用虚函数能否实现多态

6.4.3 父类指针操作子类数组

6.5 多继承下的多态

6.6 虚继承下的多态

6.7 纯虚函数和抽象类

6.8 typeid运算符

6.9 静态绑定和动态绑定

7.1 函数模板

7.1.1 函数模板语法

7.1.2 函数模板和函数重载

7.1.3 函数模板机制

7.2 类模板

7.2.1 单个类的类模板语法

7.2.2 继承中的类模板语法

7.2.3 类模板的使用

7.3 类模板中的关键字static

第8章 异常

8.1 什么是异常

8.2 异常的语法

8.3 异常类型以及多级catch

8.4 throw详解

8.5 标准库异常

第9章 输入/输出流

9.1 输入/输出流介绍

9.1.1 输入/输出流的理解

9.1.2 流的理解

9.1.3 为什么要引用输入/输出流

9.1.4 流的缓冲区

9.2 标准输入/输出流

9.2.1 标准输入/输出流对象

9.2.2 输出流的使用

9.2.3 输入流的使用

9.2.4 输入/输出格式化

9.3 文件输入/输出流

9.3.1 文件的打开与关闭

9.3.2 文件的读写

9.4 字符串流的读写

第10章 标准模板库STL

10.1 STL概述

10.1.1 STL基本概念

10.1.2 容器

10.1.3 算法

10.1.4 迭代器

10.1.5 C++标准库

10.2 常用容器

10.2.1 string

10.2.2 vector容器

10.2.3 deque容器

10.2.4 list容器

10.2.5 map容器

10.2.6 set容器

10.3 常用算法

10.3.1 算法概述

10.3.2 算法分类

10.3.3 算法中函数对象和谓词

10.3.4 预定义函数对象和谓词

10.3.5 函数适配器

第11章 C++11/14新标准

11.1 概述

11.2 实用性加强

11.2.1 新类型

11.2.2 统一初始化

11.2.3 nullptr与constexpr

11.2.4 类型推导

11.2.5 基于范围的for循环

11.2.6 强类型枚举

11.2.7 智能指针

11.2.8 右值引用:移动语义和完美转发

11.3 类的加强

11.3.1 特殊成员函数

11.3.2 委托构造

11.3.3 继承构造

11.3.4 虚方法管理:override和final

11.3.5 显示禁用默认函数

11.4 对模板的加强

11.4.1 外部模板

11.4.2 尖括号<>

11.4.3 模板别名using=

11.4.4 默认模板参数

11.4.5 可变参数模板

11.5 lambda函数

11.6 对标准库的加强

11.6.1 新增容器

11.6.2 包装器

11.6.3 正则表达式

11.6.4 并发编程

第12章 常用设计模式

12.1 概述

12.2 设计模式的基本原则

12.3 常用设计模式

12.3.1 单例模式

12.3.2 简单工厂模式

12.3.3 工厂方法模式

12.3.4 抽象工厂模式

12.3.5 建造者模式

12.3.6 代理模式

12.3.7 装饰模式

12.3.8 策略模式

12.3.9 观察者模式

第13章 数据库基础

13.1 数据库简介

13.1.1 MySQL简介

13.1.2 关系型数据库

13.2 MySQL安装

13.2.1 MySQL安装测试

13.2.2 MySQL服务开启与使用

13.3 MySQL管理

13.3.1 MySQL用户设置

13.3.2 管理MySQL的命令

13.4 MySQL数据类型

13.4.1 整型

13.4.2 浮点型

13.4.3 定点数

13.4.4 字符串

13.4.5 二进制数据

13.4.6 日期和时间类型

13.4.7 数据类型的属性

13.5 MySQL使用

13.5.1 登录MySQL

13.5.2 建库建表

13.5.3 数据增删改查

13.5.4 删除整个数据库

13.6 MySQL接口使用

13.6.1 MySQL中文完全参考手册

13.6.2 获取错误信息

13.6.3 连接服务器

13.6.4 数据查询

13.6.5 MySQL的事务处理

13.6.6 索引

13.7 MySQL案例

第14章 Qt入门

14.1 Qt简介

14.1.1 Qt Creator的下载与安装

14.1.2 Qt Creator环境介绍

14.2 Hello World

14.2.1 编写Hello World程序

14.2.2 添加一个按钮

14.2.3 Qt的信号和槽机制

14.2.4 程序的发布和运行

14.3 窗口部件

14.3.1 基础窗口部件QWidget

14.3.2 对话框Qdialog

14.3.3 其他窗口部件

14.4 布局管理

14.4.1 布局管理系统

14.4.2 设置伙伴

14.4.3 设置Tab键顺序

14.5 常用控件介绍

14.5.1 常用控件需要加载的头文件

14.5.2 控件变量定义

14.5.3 控件初始化

14.5.4 在垂直布局中加载控件

14.5.5 常用控件使用

14.6 文件、目录和输入/输出

14.6.1 文件和目录

14.6.2 文本流和数据流(QDataStream和QtextStream)

14.7 Qt和数据库

14.7.1 连接到数据库

14.7.2 执行SQL语句

14.8 Qt网络编程

14.8.1 Qt和TCP

14.8.2 Qt和UDP

参考文献

面向对象的嵌入式软件开发是2018年由电子工业出版社出版,作者 钱瑛。

得书感谢您对《面向对象的嵌入式软件开发》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Java面向对象程序设计(第3版) 电子书
本书内容主要包括Java概述、Java语言基础、Java输入/输出、程序流程控制结构和方法、数组、Java类和对象、类的继承和接口、包和异常、面向对象程序设计的基本原则及设计模式初步、图形处理、图形用户界面、多线程等。
C++面向对象程序设计(微课版) 电子书
本书结合C++语言,介绍了面相对象程序设计的基本知识及应用。全书包括C++语言基本知识、C++面向过程的程序设计、C++面向对象的程序设计、C++二级考试相关考点解析,为读者学习C++语言建立了完整的学练平台。本书主要分为三个部分:第一部分,基础部分:第1章,主要介绍面相对象程序设计的基本概念和相关技术,以及C++对面向对象技术的支持;第二部分,面向过程部分:第2章,主要介绍C++语言面向过程程序
C#面向对象程序设计(微课版) 电子书
本书全面介绍和讲解了C#语言的全部基础语法,信息量大、知识性强、条理清晰,编程实例丰富。
PLC的标准化应用——基于西门子OMAC的面向对象的编程方法 电子书
PLC程序的标准化,除了控制过程本身,还涉及生产线布局、工艺分层、设备及元器件的命名与接口等因素,这些因素相辅相成且相互制约,是实际生产线工艺流程和设备之间的相互关系在程序世界中的完整重现。本书结合ISA88标准,以西门子基于OMAC的CPG方案架构展开讲解,阐述了采用面向对象编程思想的PLC标准化编程的方法。主要内容包括机械结构、电气设计、编程规范、主程序标及时钟系统、控制柜程序、控制指令、状态
嵌入式Linux与物联网软件开发——C语言内核深度解析 电子书
  针对性强:面向嵌入式Linux内核源码、底层驱动软件开发等技术方向。   精华原创:凝结作者多年研发及教学经验,帮助读者真正深度理解难点。   求职必读:详解常见面试题,完全应对 “嵌入式软件工程师”岗位需求。