自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 问答 (1)
  • 收藏
  • 关注

原创 1、vim编辑器

vim编辑器 vim作为linux不可缺少的编辑器,是高效工作的利器,下面简单记录vim的使用。一、三种模式 vim共有三种模式:一般指令模式、编辑模式和命令行命令模式。 编辑模式可以对文档进行编辑;命令行命令模式下,通过输入“: / ?”三个中的任何一个按钮,可以将光标移动到最下面一行,从而执行读取、存盘、查找、替换、离开vim和更改vim设置属性(是否显示行号、设置tab键的动作等属性)等的动作;除了这些模式外就是一般指令模式,在一般指令模式下,可以移动光标,并执行替...

2020-11-14 19:59:51 164

原创 c++(十一)、运算符的重载

一、运算符重载1、运算符重载简介我们接触过函数的重载,而运算符的重载和函数重载是有区别:相同点:运算符可以看做是函数;不同点:a、语法上有区别,运算符重载分为中缀式(a * b)、前缀式(*a b)和后缀式(a b*); b、不能自定义新的运算符(只能重载); c、函数可以重载和重定义产生任何想要的结果,但运算符作用于内置类型的行为不能修改。并不是所有的运算符都可以被重载,可重载的运算符如下所示:a、类型转换运算符;b、n...

2020-06-07 23:14:17 267

原创 c++(十)、文件件输入输出流(二)

一、格式化输出与I/O流函数1、格式化输出//设置域宽控制符setw(n),所谓域宽即数据所占的总字符数;//要包含头文件<iomanip>,setw()的默认为setw(0),按实际输出;//如果输出的数值占用的宽度超过setw(int n)设置的宽度,则按实际宽度输出;#include <iomanip>#include <iostream>int main(){ std::cout << std::setw(3) <

2020-06-02 00:33:18 399

原创 c++(九)、文件输入输出流

一、文件系统(c++17)1、文件系统库c++17中的std::filesystem提供了在文件系统与其组件,如路径、常规文件与目录上进行操作的方法。File文件:持有数据的文件系统对象,能被写入或读取。文件有名称和属性,属性之一是文件类型。Path路径:标识文件所处位置的一系列元素,可能包含文件名。路径类:namespace fs = std::filesystem//定义名字空间别名;fs::path p{"fileName.cpp"};//定义包含cpp文件的路径变量p;

2020-06-01 01:08:02 419

原创 c++(八)、继承与多态(二)

一、抽象类与动态类型转换1、访问控制属性类的定义中有public、private和protected三个关键字,其中private关键字说明类中成员为私有成员,只能在类内的函数访问;public成员为公有成员,可被任何其他类访问,protected关键字是保护属性,保护属性的数据或函数可被派生类成员访问。class A{public: int i;protected: int j;private: int k;};class B : public A//公

2020-05-27 23:27:04 117

原创 c++(七)、继承与多态

一、继承与构造1、继承(inheritance)所谓继承是在一个基类或父类基础上形成的子类或派生类。如上图中在bike中延伸出Tandem Bike、racing bike和mountain bike这三种子类或派生类,即子继承父;而泛华则是父泛华子。当要避免一个类被继承时,c++11引入final特殊标识符,可以使得类不能被继承。class B{};//B可以被继承;class C : public B {};//C继承类B;class D final {};//类D不能被继

2020-05-27 00:10:52 139

原创 c++(六)、对象和类(四)

一、析构、友元与深浅拷贝1、析构函数(destructor) 析构函数与构造函数正好相反,析构函数用来销毁对象。 下面列出构造函数(ctor)和析构函数(dtor)的对比:(1)ctor当对象创建时使用,dtor当对象销毁时使用;(2)ctor的原型:C::C(arguments);dtor的原型:C::~C();(3)ctor的默认函数原型:C::C()或参数带有默认值;dtor的默认函数原型:C::~C();(4)当都没有显示声明时,ctor和dtor都有创建一个...

2020-05-22 22:42:33 241

原创 c++(五)、对象和类(三)

一、断言与常量表达式1、常量表达式与c++11中的constexpr关键字常量表达式是编译期可以计算值的一个表达式。//eg.c++数组的大小要求是编译期的一个常量;int n = 1;n++;std::array<int, n> a1;//error:n is not a constant expression;const int m = 2;std::array<int, m> a2;//ok,m is a constant expression;而c

2020-05-22 00:23:00 161

原创 c++(四)、对象和类(二)

一、抽象、封装与this指针1、抽象与封装 抽象的定义:在研究对象或系统时,为了更加专注于感兴趣的细节,去除对象或系统的物理或时空细节/属性的过程叫做抽象。也即提炼目标系统中我们关心的核心要素的过程。 封装的定义:一种限制直接访问某个数据或对象组成部分的语言机制。它是绑定数据和函数的语言构造块,以及限制访问目标对象的内容和手段。1)、数据域封装(data field encapsulation) 当数据域采用public形式时有2个问题:a、数据会被类外的方法篡改;b、...

2020-05-10 22:39:35 212

原创 c++(三)、对象和类(一)

一、用类创建对象1、类的概念(concepts of class)1)、面向对象编程(Object-Oriented Programming)特征(1)、Abstraction(抽象)(2)、Polymorphism(多态)(3)、Inheritance(继承)(4)、Encapsulation(封装)2)、定义对象的方法 对象是类的实例,类包含:有变量定义的数据域(data fields)和由函数定义的行为(behaviors)。 类中有两种特殊的函数:(1...

2020-05-10 02:37:33 185

原创 c++语法基础(二)

一、c++的内存模型(Simplified Memory Model) 1、栈(stack) 编译器自动分配释放。 2、堆(heap) 一般由程序员分配释放,若程序员不释放,程序结束时可能有OS回收。 3、静态区/全局区(static/global) 全局变量和静态变量的存储是放在一起的。可简单认为:程序启动全局/静态变量就在此处,程序结...

2020-05-05 22:05:24 171

原创 c++语法基础

# 一、Reference(引用)## 1、引用的定义 A reference is an alias for another variable.## 2、声明引用变量的方法 int x; int& rx = x;or int x, & rx = x;## 3、引用的性质 (1)、通过引用所做的读写操作实际上是作用于原变量上的...

2020-05-05 00:17:29 209

空空如也

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

TA关注的人

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