自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 C++文件系统

filesystem#include <filesystem>#include <iostream>using namespace std;int main(){ //打开文件夹 filesystem::path url("file"); //判断当前文件夹是否存在 if (!filesystem::exists(url)) { cout << "相对路径文件夹不存在" << endl; } //创建单层文件夹,路径存在不做其他

2022-01-10 16:23:43 228

原创 C++时间管理和随机数

时间段#include <chrono> // duration TYPEDEFStypedef duration<long long, nano> nanoseconds; //纳秒typedef duration<long long, micro> microseconds; //微秒typedef duration<long long, milli> milliseconds; //毫秒typedef duration<long

2022-01-06 12:05:13 506

原创 C++正则表达式

regex_matchregex_replaceregex_search#include <iostream>#include <regex>#include <string>using namespace std;//1.regex_match正则匹配void test_regex_match(){ //满足:true 不满足:false regex email("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\

2022-01-04 11:41:28 246

原创 C++智能指针

shared_ptr1.get()函数:返回数据类型指针的引用2.use_count()函数:返回管理对象的指针数3.swap()函数:交换管理对象4.reset()函数:重置管理对象5.make_shared<>()函数:构建shared对象#include <iostream>#include <memory>using namespace std;class custom{public: void print() { co

2022-01-04 10:22:58 281

原创 C++STL算法

STL查找算法1.基本查找(1)find:区间查找(2)find_if:条件查找(3)find_firt_of: 查找区间第一次出现值(4)adjacent_find: 查找第一次重复的数(5)search:子序列查找(6)search_n: 子序列查找出现次数2.统计查找(1)count: 区间统计(2)count_if: 条件统计个数(3)equal:比较3.有序查找(1)binary_search:二分查找(2)upper_bound: 查找最后

2022-01-03 18:06:35 192

原创 C++STL迭代器

迭代器1.迭代器:类中类,通过运算符的重载,用类中类的对象遍历容器2.迭代器分类:(1)正向迭代器:iterator(begin(); end();)(2)反向迭代器:reverse_iterator(rbegin(); rend();)(3)常正向迭代器:const_iterator(cbegin(); cend();)(4)常反向迭代器:const_reverse_iterator(crbegin(); crend();)3.按功能分类:(1)正向迭代器(2)双向迭代

2021-12-30 21:31:57 353

原创 C++STL容器(三)

集合1.数据自带排序2.数据具有唯一性(单集合)#include <iostream>#include <set>#include <string>#include <ctime>#include <bitset>using namespace std;//基本操作void testSet(){ srand((unsigned int)time(nullptr));//随机数种子 set<int> se

2021-12-20 18:51:05 339

原创 C++STL容器(二)

链表#include <iostream>#include <string>#include <list>#include <functional> //仿函数less和greater头文件using namespace std;//list基础数据类型操作void testList(){ list<string> strlist; //尾插入 strlist.push_back("string1"); strlist

2021-12-18 23:53:30 945

原创 C++STL容器(一)

定长数组#include <iostream>#include <string>#include <array>using namespace std;template <class _Ty,size_t size>class Myarray{public: Myarray() { memroy = new _Ty[size]; } _Ty& operator[](int index) { return memro

2021-12-16 13:52:57 864

原创 C++模板

函数模板1.把类型当作未知量2.语法template <typename _Ty>_Ty function(_Ty a,_Ty b){ return a>b?a:b;}template <class _Ty1,class _Ty2>void print(_Ty1 a,_Ty2 b){ cout<< a << b <<endl;}3.调用(1)隐式调用(2)显示调用:函数名<类型名

2021-12-13 16:46:38 746

原创 C++异常处理

基本异常处理1.异常处理机制:暂缓问题处理,不在当前函数中处理,在它调用者中处理2.任何东西都可以为异常,错误只是异常的一种3.异常一旦被抛出,不做处理,如果引发异常,会调用默认abort终止程序4.捕获和处理异常(1)throw抛出异常(2)try(检查,捕获)和catch(处理异常)一起出现,{}不可省略(3)一个try可以对相应多个catch,只能执行一个匹配项(4)不能存在两个相同的异常处理类型(5)异常处理中char和int类型不会互相转换(6)catch(

2021-12-10 14:18:52 501

原创 C++IO流

流:诺干字节数据从一端到另一端流类体系:1.流对象2.流运算符 << >>输入输出流1.ostream 类(1)cout可重定向为文件(2)cerr 不能重定向为文件(3)clog 可重定向为文件(4)字符类的处理(5)格式控制字符:#include <iomanip> *设置有效位数:setprecision(int) *设置精度:fix结合setprecision(int)2.istream 类 ci...

2021-12-07 22:41:20 538

原创 C++虚函数和多态

虚函数和虚函数表1.用virtual修饰的成员函数叫虚函数2.空的类或者结构体占用1个字节,若只有虚函数,则占4个字节(32位)3.虚函数表:一个指针存储所有虚函数的首地址#include <iostream>using namespace std;class A{public:protected:};class B{public: virtual void print();protected:};class C{public: int num;

2021-12-05 21:19:13 202

原创 C++继承和派生

继承方式与权限问题1.继承的写法2.继承(子类中没有产生新的属性或者行为)派生(子类中有新的属性和行为产生)3.继承实质与权限问题(1)实质:父类的数据和成员子类有一份(2)权限问题:继承方式只会增强父类属性在子类中的权限显示(父类的私有属性不能直接访问)4.私有继承再继承无意义5.子类构造无参函数,父类必须要有无参的构造函数#include <iostream>#include <string>using namespace std;clas

2021-11-30 21:41:53 163

原创 C++类的组合

1.以另一个类的对象为数据成员,必须采用初始化参数列表的写法#include <iostream>#include <string>using namespace std;class Boy{public: Boy(string name, int age) :name(name), age(age){} void printBoy() { cout << name << "\t" << age << endl

2021-11-27 20:21:21 709

原创 C++运算符重载

const成员1.const数据成员(1)const类型变量为只读,不可修改(2)采用初始化参数列表方式初始化2.const成员函数3.const对象static成员友元

2021-11-25 22:12:28 415

原创 C++特殊成员

const成员1.const数据成员(1)const类型变量为只读,不可修改(2)采用初始化参数列表方式初始化2.const成员函数3.const对象static成员友元

2021-11-23 16:01:16 541

原创 自实现字符串的追加和比较

#include <iostream>#include <string>#include <cstring>using namespace std;class mystring{public: mystring() = default; mystring(const char* pstr) { str = new char[strlen(pstr) + 1]; strcpy(str, pstr); } ~mystring()//析构 {.

2021-11-21 16:11:54 561

原创 C++构造与析构

构造函数1.构造函数样式(1)函数名和类名相同(2)没有返回值(3)若无构造函数,任何类中都存在一个默认的构造函数 ①默认的构造函数都是无参的 ②若有构造函数,默认构造函数不存在(4)delete可以用来删除默认函数(5)使用默认构造函数,用default说明(6)构造函数在构造对象的时候调用(初始化参数列表) 构造函数名(参数1,参数2,参数3,...):成员1(参数1),成员2(参数2),成员3(参数3),...{}(7)允许构造函...

2021-11-21 14:29:44 494

原创 C++类和对象(附C语言与C++链表)

类和对象的基本概念1.类:一系列事物的抽象,万物皆可为类(1)属性:事物的特征/数据类型的描述(2)行为:事物的操作/函数描述2.对象:类的具体化/类的实例化类的定义1.创建语法class 类名{ //权限限定词public: //共有属性(类外的接口)protected: //保护属性private: //私有属性};2.权限限定词的作用(1)类外只能访问共有属性。类外访问类内的数据,只能通过对象访问,static成员除外。(2)

2021-11-18 23:06:11 1034 2

原创 C++和C语言区别(二)附二级指针的动态内存申请

结构体区别1.定义结构体与C语言一致2.定义变量可省略关键字struct3.C++结构体中允许函数存在(C++在没有写构造函数和权限限定的时候,用法和C语言一致)(1)函数可以直接在结构体中实现,也可在结构体中声明,在结构体外实现,(2)结构体中函数可以直接访问结构体中数据(3)学会调用: 对象(结构体变量).成员 对象指针->成员 (*对象指针).成员#define _CRT_SECURE_NO_WARNING...

2021-11-16 18:46:42 473 1

原创 C++与C的区别(作业)

头文件的区别1.C++中创建源文件后缀为.cpp,C语言中创建源文件后缀为.c,头文件保持不变,后缀为.h。2.包含自己的头文件,C语言与C++无区别。包含库目录,C语言中加后缀.h,C++则可以去掉.h加个c,例如#include <stdio.h>等价与#include <cstdio>。命名空间引入命名语法namespace 空间名{}在C++中,可以增加标识符的使用率,在C语言中,同一个作用域中无法定义相同的标识符。空间声明的函数可以在外部实

2021-11-14 11:33:02 652 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除