197讲 vector容器、构造函数、赋值操作、容量和大小、插入和删除 vector基本概念 功能: vector数据结构和数组非常相似,也称为单端数组 vector 与普通数组的区别: 不同之处在于数组是静态空间,而vector可以动态扩展 动态扩展: 并不是在原空间之后续借新空间,而是找更大的内存空间,然后将原数据拷贝新空间,释放原空间。 ve…
189讲 string容器构造函数、赋值操作、字符串拼接、字符串查找和替换、字符串比较、字符存取、字符串插入和删除、子串获取 string构造函数 构造函数原型: string(); //创建一个空的字符串,例如:string str; string(const char * s) //使用字符串s 初始化 string( const string…
185讲 STL初识、vector存放内置数据类型、vector存放自定义数据类型、容器嵌套容器 STL初识 STL的诞生 长久以来,软件界一直希望建立一种可重复利用的东西 C++ 的面向对象和泛型编程思想,目的就是复用性的提升 大多数情况下,数据结构和算法都未能有一套标准,导致被迫从事大量重复工作 为了建立数据结构和算法的一套标准,诞生了STL …
类模板分文件编写 学习目标: 掌握类模板成员函数分文件编写产生的问题以及解决方式 问题: 类模板中成员函数创建时机是在调用阶段,导致分文件编写时连接不到 解决: 直接包含.cpp 源文件 //主流使用方法2,写为.hpp文件。 将声明和实现写到同一个文件中,并更改后缀名为.hpp,hpp是约定的名称,并不是强制。 //Person.hpp 文件 #…
174讲 类模板 类模板的作用: 建立一个通用类,类中的成员 数据类型可以不具体指定,用一个虚拟的类型来代表。 示例: #include<iostream> #include"string" using namespace std; template<typename NameType,typename Age…
#include<iostream> #include"string" using namespace std; template<typename T> void mySwap(T &a,T &b) { T temp = a; a = b; b = temp; } class Perso…
167讲 模板的概念、基本语法、注意实现数组排序、普通函数与函数模板的区别 该阶段属于C++ 提高编程。 本阶段主要针对C++ 泛型编程和STL 技术做详细讲解,提高C++更深层次的使用 模板 模板就是简历通用的模具,大大提高复用性 模板不可以直接使用,他只是一个框架 模板的通用并不是万能的 函数模板 C++ 另一种编程思想称为 泛型编程 ,主要利…
文件操作 程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放 通过文件可以将数据持久化 C++中对文件操作需要包含头文件 文件类型分为两种: 文本文件 --- 文本以文本的 ASCII码 形式储存在计算机中 二进制文件 -- 文本以文本的 二进制 形式存储在计算机中,用户一般不能直接读懂他们 操作文件的三大类: ofstream : 写…
多态* 多态是c++ 面向对象三大特性之一 多态分为两类: 静态多态:函数重载,运算符重载 属于静态多态,复用函数名 动态多态: 派生类 和 虚函数实现运行时多态 静态多态和动态多态的区别: 静态多态的函数地址早绑定 - 编译阶段确定函数地址 动态多态的函数地址晚绑定 - 运行阶段确定函数地址 方法的重写和重载的比较: 来自JAVA 笔记 多态基本…
127讲 继承的语法、继承方式 继承的语法 #include <iostream> #include "string" using namespace std; class base_giegie { public: void ikun() { cout << "小黑子,又在黑人家giegie …