C++
ReEchooo
这个作者很懒,什么都没留下…
展开
-
复制代码时删除每一行的行号(以VScode为例)
复制代码时删除每一行的行号(以VScode为例)1. 问题描述2. 解决方案1. 问题描述有时候在我们复制代码时,会遇到代码每一行前有行号的情况,如下图所示:2. 解决方案在vscode中能够直接用正则表达式将行号替换掉。带点的:^\s*([0-9]+)\.不带点:^\s*([0-9]+)综合起来:^\s*([0-9]+)[\.]*复制到VScode编辑器中打开搜索替换,启用搜索的正则表达式,将正则表达式输进去(如果后面还有空格就再加一个空格),替换那行什么都不输入即可,全部替原创 2021-03-11 21:24:00 · 2420 阅读 · 0 评论 -
C++函数进阶功能之类继承
类继承成员初始化列表的作用以下未标注的都是C++特有的功能成员初始化列表的作用成员初始化列表是在创建对象时进行初始化。它的应用场景如下:class Test{private:const int num;public:Test(int Input);}// not allowedTest::Test(int Input){num = Input;}如果用上面的构造函数进行初始化,是不允许的,因为私有数据是const变量,创建好对象后就不能对其进行修改。想要对私有数据中的c原创 2020-08-05 20:23:22 · 679 阅读 · 0 评论 -
C++函数进阶功能之类和动态内存分配
类和动态内存分配静态存储类类中C++自动提供的函数复制构造函数以下未标注的都是C++特有的功能静态存储类如果在类中定义了一个statics int a;那么无论创建多少个对象,都只共享一个静态成员a,这在所有类对象具有相同值的私有数据,这一应用场合是十分有用的。类中C++自动提供的函数对于以下五种函数,如果默认构造函数默认析构函数复制构造函数赋值运算符地址运算符复制构造函数这个函数的原型通常如下:Class_name(const Class_name &);以下的四原创 2020-08-04 21:36:29 · 216 阅读 · 0 评论 -
C++函数进阶功能之使用类
使用类运算符重载友元运算符重载的两种方法类的自动转换和强制类型转换以下未标注的都是C++特有的功能注意:在类成员函数中,是可以通过运算符(.)来访问其它对象的私有数据的注意:在涉及到输入输出流的时候,一定要加上头文件iostream,否则会出现类似于error: ‘ostream’ in namespace ‘std’ does not name a type的错误运算符重载运算符函数的格式:// formatoperatorop(argument-list)// for exampleo原创 2020-08-02 15:28:11 · 433 阅读 · 0 评论 -
C++函数进阶功能之对象和类
C++函数进阶功能类以下未标注的都是C++特有的功能类类包括类声明和类方法定义两部分。类声明可以类比为函数原型,类方法可以类比为函数定义(注意只是类比)类声明中,分为private私有部分(默认访问方式),和public公有部分。如果不标明访问方式,那么就是私有部分的访问方式。类方法有两个特殊的特征。第一个是在定义类成员函数时,需要用作用域解析运算符(::)来标识函数所属的类,这也就意味着不同的类可以用同一函数重复定义而不产生冲突。注意在同一类中,成员函数之间可以相互调用而不加运算符(::)。第二原创 2020-08-01 22:12:15 · 263 阅读 · 0 评论 -
C++函数进阶功能之函数探幽
C++函数进阶功能1. 内联函数引用变量1. 内联函数在普通的函数定义前加一个inline,如:inline double square (double a) {return a*a}它在调用的时候,和普通函数调用是一样的,只是说,它节省了一点处理调用的时间,但同时也消耗了内存,实际应用价值不大。引用变量格式:int & a = b;这说明变量名a和变量名b完全是一回事。注意在声明引用的时候,就必须进行初始化,不可以先声明再初始化。将引用用在函数调用中,即按引用传递,这能够让函原创 2020-07-30 21:50:47 · 248 阅读 · 0 评论