C++前期
文章平均质量分 94
C++
sponge'
本人即将考研,学习领域覆盖C++,linux,我的大部分博客都万字以上,希望大家多多支持
展开
-
C++入门:命名空间,缺省参数,函数重载详解
1. C++关键字(C++98)C++总计63个关键字,C语言32个关键字ps:下面我们只是看一下C++有多少关键字,不对关键字进行具体的讲解。后面我们学到以后再细讲。#includ<iostream>:相当于C语言里面的<stdio,h>using namespace std; 又是什么东西呢,接下来由此引入命名冲突和命名空间关键字 namespace命名冲突:命名冲突:同一个作用域不能定义同名变量 -- C语言没有很好的解决这个问题,CPP引入n...原创 2022-04-27 19:48:14 · 2530 阅读 · 14 评论 -
C++入门 “引用”,“内联函数” 详解
1.引用的概念:引用不是新定义一个变量,而是给已存在变量取了一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。2.引用的格式:类型& 引用变量名(对象名) = 引用实体;举例如下:注意:引用类型必须和引用实体是同种类型的 3.引用的特性(1). 引用在定义时必须初始化 例如:int& d; 这样就是没有初始化是错的(2). 一个变量可以有多个引用 int a = 10; int& b = a...原创 2022-05-10 18:24:49 · 1345 阅读 · 18 评论 -
C++:关键字“auto“详解,“范围for“讲解,NULL-0-nullptr 三者区分
一.auto关键字(C++11) 1.auto简介在早期C/C++中auto的含义是:使用auto修饰的变量,是具有自动存储器的局部变量,但遗憾的是一直没有 人去使用它,大家可思考下为什么? C++11中,标准委员会赋予了auto全新的含义即:auto不再是一个存储类型指示符,而是作为一个新的类型 指示符来指示编译器,auto声明的变量必须由编译器在编译时期推导而得。 2.作用:用于推导变量的类型使用auto定义变量时必须对其进行初始化,在编译阶段编译器需要根据初始化表达式来..原创 2022-05-12 21:32:49 · 4309 阅读 · 8 评论 -
C++:类和对象——“类的详细介绍”,“this指针”
1.面向过程和面向对象初步认识C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。 C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。 拿外卖来举例子,C语言面向过程看的是:点外卖,送外卖,拿外卖。C++面向对象看的是:商家,骑手,用户。2.类的引入 (1)C语言中,结构体中只能定义变量,在C++中,结构体内不仅可以定义变量,也可以定义函数。 C++兼容C struct的用法C++同时对struct......原创 2022-05-13 11:44:35 · 756 阅读 · 10 评论 -
C++入门:构造函数,析构函数,拷贝构造函数,运算符重载详解
目录类的6个默认成员函数一.构造函数1.概念2.特征如下:1. 函数名与类名相同。2. 无返回值。3. 对象实例化时编译器自动调用对应的构造函数。4. 构造函数可以重载。5. 如果类中没有显式定义构造函数,则C++编译器会自动生成一个无参的默认构造函数,一旦用户显式定义编译器将不再生成。6. 无参的构造函数和全缺省的构造函数都称为默认构造函数,并且默认构造函数只能有一个。7. 关于编译器生成的默认成员函数,很多同学会有疑惑:8. (了解)C++11打的..原创 2022-05-15 23:14:49 · 1679 阅读 · 30 评论 -
C++:1.流插入与流提取的运算符重载,2.初始化列表,3.explicit关键字,4.静态成员变量与非静态成员变量用法 详解
重载了各种内置类型的原创 2022-06-02 21:47:41 · 1650 阅读 · 15 评论 -
C++:友元,内部类的详解
(3)友元函数特征【1】友元函数可访问类的私有和保护成员,但不是类的成员函数 【2】友元函数不能用const修饰(因为没有this指针)【3】友元函数可以在类定义的任何地方声明,不受类访问限定符限制,放在public,private中都行,不放这两个里面放在最前面也行,一般都是定义最前面的【4】一个函数可以是多个类的友元函数 【5】友元函数的调用与普通函数的调用和原理相同2.友元类(1)解释:在Date类中有一自定义成员变量Time _t;,成员函数 SetTime原创 2022-06-07 21:59:18 · 472 阅读 · 3 评论 -
C/C++内存管理:new/delete,operator new/delete用法详解
答:(从左往右,从上往下顺序)前3个选C:因为全局变量,静态变量或静态全局变量生命周期都是全局,都属于静态区。静态的全局的在静态区;不可修改的常量,编译好的指令在常量区。const都可以修饰局部,全局,静态变量,不改变其空间位置,只是使其不可修改。常变量也是在栈上的4,5选A:局部变量和数组都是在栈上。6,7选A:6是数组存在栈上没问题,7是数组指向的内容,他是把常量字符串的内容拷贝到数组中,数组指向的内容是在栈上.................................原创 2022-06-09 18:08:32 · 860 阅读 · 11 评论 -
C++:模板初阶篇
目录一.泛型编程二.函数模板1.函数模板概念2.函数模板格式 swap(a, b); 和 swap(c, d); 调用的是同一个函数吗?3.函数模板的原理 三.类模板 泛型编程: 不再是针对某种类型,能适应广泛的类型,跟具体的类型无关的代码如何实现一个通用的交换函数呢?使用函数重载虽然可以实现,但是有一下几个不好的地方: 1. 重载的函数仅仅是类型不同,代码复用率比较低,只要有新类型出现时,就需要用户自己增 加对应的函数 2. 代码的可维护性比较低,一个出错可能所有的重载均出错因此原创 2022-06-16 21:40:13 · 994 阅读 · 11 评论