C++
qq_42025376
这个作者很懒,什么都没留下…
展开
-
C++ 引用(89,)
2 引用2.1 引用的基本使用**作用: **给变量起别名语法: 数据类型 &别名 = 原名用 a 操纵这个内存注意是操纵的同一块的内存(90) 引用的注意事项引用必须初始化引用在初始化后,不可以改变(91)引用做函数参数作用:函数传参时,可以利用引用的技术让形参修饰实参优点:可以简化指针修改实参...原创 2020-11-19 21:45:03 · 130 阅读 · 0 评论 -
B站 C++ STL(185,186,187,)
(185)2 STL的基本概念2.1 STL的诞生长久以来,软件界一直希望建立一种可重复利用的东西C++的面向对象和泛型编程思想,目的就是复用性的提升大多情况下,数据结构和算法都未能有一套标准,导致被迫从事大量重复工作为了建立数据结构和算法的一套标准,诞生了STL2.2 STL基本概念STL(Standard Template Library,标准模板库)STL 从广义上分为: 容器(container) 算法(algorithm) 迭代器(iterator)容器和算法之间通过迭代器原创 2020-11-12 21:17:05 · 173 阅读 · 0 评论 -
B站 C++ 114 --- 120 (成员变量和成员函数分开存储;this指针;)
114 . C++ 对象模型 和 this 指针成员变量和成员函数是分开存储C++ 中,类内的成员变量和成员函数是分开存储只有非静态成员变量才属于类的对象上怎么理解??1、成员变量和成员函数是分开存储(1)空对象占用内存空间?在这里插入代码片...原创 2020-10-31 16:59:54 · 159 阅读 · 2 评论 -
B站 C++ 110 -- 113 (浅拷贝深拷贝,初始化列表,类对象作为类成员,静态成员)
110 深拷贝 浅拷贝浅拷贝: 简单的赋值拷贝操作深拷贝: 在堆区重新申请空间,进行拷贝操作浅拷贝 会导致 堆区内存深拷贝 是怎么解决的 ?#include<iostream>using namespace std;class Person{public: Person() { cout << "Person的默认构造函数调用" << endl; } Person(int age,int height) { m_Age = age;原创 2020-10-29 21:41:05 · 191 阅读 · 0 评论 -
B站C++ 内存
(84)程序的内存模型内存分区模型C++程序在执行时,将内存大方向分为4个区域代码区: 存放函数的二进制代码,由操作系统进行管理全局区: 存放 全局变量 和 静态变量 以及 常量栈区: 由编译器自动分配释放,存放函数的 参数值,局部变量等堆区: 由程序员分配和释放,若程序员不释放,程序结束时 由操作系统回收分区的意义:不同区域存放的数据,赋予不同的生命周期,给我们更大的灵活编程...原创 2020-10-28 09:20:27 · 167 阅读 · 0 评论 -
B站 C++学习 指针
56 指针为什么要用指针?可以使用 变量a 操作 10; 但是速度不快。也可以使用变量值的地址 0x0000 对值进行操作,但是这样使用不方便(十六进制值)因此,这里引入指针,即用一个变量 p 存放另一个 变量a 的地址,便于直接对变量 a进行访问。...原创 2020-10-25 22:11:17 · 279 阅读 · 0 评论 -
B站视频C++提高编程 模板 (167)
C++ 另一种 编程思想 称为 泛型编程,主要利用技术就是 模板C++ 提供两种模板机制 函数模板 和 类模板167 模板概念建立通用的模具,大大提高复用性特点模板不可以直接使用,只是一个框架通用性不是万能的168 函数模板函数模板作用建立一个函数,其函数返回值 和 形参类型 可以不具体指定,用一个 虚拟类型 代表语法template<typename T>函数声明 或 定义 template ---- 声明创建 模板typename----原创 2020-10-24 21:49:13 · 162 阅读 · 0 评论 -
C++ 面试准备
1、栈,堆区别2、 重载,重写区别重载,多态,虚函数,纯虚函数3、 拷贝构造4、 Vector常用操作5、 进程,线程6、值传递,引用传递区别7、引用8、malloc/free与new/delete的区别9、delete与 delete []区别10、const11、结构与联合有和区别?(1). 结构和联合都是由多个不同的数据类型成员组成, 但在任何同一时刻, 联合中只存放了一个被选中的成员(所有成员共用一块地址空间), 而结构的所有成员都存在(不同成员的存放地址不同)。(2).原创 2020-10-21 10:22:41 · 213 阅读 · 0 评论 -
B站视频学习C++ 多态 135-
(135) 多态多态分为两类静态多态:函数重载 和 运算符重载 ,复用函数名动态多态:子类和 虚函数 实现运行时多态静态多态 和 动态多态 区别:静态多态的地址早绑定-- 编译阶段确定函数地址动态多态的地址晚绑定-- 运行阶段确定函数地址#include <iostream>using namespace std;class Animal{public: void speak() { cout << "动物在说话" << endl;原创 2020-10-20 14:59:05 · 121 阅读 · 0 评论 -
B站视频学习 C++ 继承
(121) 运算符重载(127)继承以写网页为例分析,继承的好处,减少重复代码语法: class 子类: 继承方式 父类{};如 class Java: public BasePage{};子类中的成员 包含两部分:一类是 从父类充继承来的(表现其共性),一类是自己增加的成员(表现其个性)。 代码实现(128)继承方式 代码实现...原创 2020-10-20 14:13:52 · 84 阅读 · 0 评论 -
C++ 类 B站学习记录 封装,构造函数 99 -- 109
Code1 用类实现求圆的周长#include<iostream>using namespace std;const double pi = 3.14;// 求圆的周长class Circle{public: // 成员变量 (属性) int m_r; // 成员函数 求周长(行为) double claculate() { return 2 * pi * m_r; // 不是cout 输出 }};int main(){ //类的实例化 Circl原创 2020-10-14 22:23:03 · 164 阅读 · 0 评论 -
C++ 内存栈 堆
参考 C++ 内存栈 堆栈堆原创 2020-10-13 20:31:04 · 75 阅读 · 0 评论 -
牛客网 C++ 输入输出
以求两个数的和为例 分析 C++ 的输入输出一输入多行,每行两个数(行数不确定)#include <iostream>using namespace std;int main(){ int a, b; while (cin >> a >> b) { cout << a + b; } return 0;}二输入多行,行数确定,每行两个数(n行)三...原创 2020-09-27 20:36:42 · 402 阅读 · 0 评论 -
C++ map 总结
文章目录map常见用法说明C++ map就是Python里的字典,键值对构成,键唯一,值可以重复 1、建立map 使用前加头文件 #include <map>声明map<key_size, value_size> map_name;键值对类型可以是基础数据类型,也可以是结构体或类; 二、添加数据 2.1 直接赋值 使用 { } 类似于数组赋值 map <int ,string > ID_name ={ {2015,'Jim'},原创 2020-05-29 16:57:11 · 1281 阅读 · 0 评论 -
C++ STL
认识STLSTL, standard template library,包含有大量的模板类和模板函数,是 C++ 提供的一个基础模板的集合,用于完成诸如输入/输出、数学计算等功能。 添加要改颜色的字体 添加要改颜色的字体 添加要改颜色的字体 添加要改颜色的字体 ...原创 2020-05-25 10:05:28 · 105 阅读 · 0 评论 -
面试题:malloc/free 和new/delete区别
引用原文1 malloc/free和new/delete 共同点malloc/free和new/delete的共同点是:都是从堆上申请空间,并且需要用户手动释放2 malloc/free 和 new/delete的不同1 malloc/free 是函数 new/delete 是操作符2 malloc 申请的空间不可以初始化,而new出来的空间可以初始化3 malloc 申请空间时需要计算手动计算大小,并将其传递,而new后面只需要跟类型4 malloc 的返回值类型是void* ,在使用时需要原创 2020-05-22 16:49:35 · 341 阅读 · 0 评论 -
C++ String
常用操作 1、赋值 C语言char 定义的字符数组不能把char 赋值给 char 2、字符串合并 使用 + 3、erase 4、从后插入 使用连接符 + 5、排序 sort() 6、 添加要改颜色的字体 添加要改颜色的字体 添加要改颜色的字体 添加要改颜色的字体 ...原创 2020-05-21 09:33:45 · 113 阅读 · 0 评论 -
C语言盲点总结
输入输出1、%p%p的实质即为将所指向的数据地址以十六进制的形式输出%p含义2、char* p = “geek”;原创 2020-05-17 21:58:47 · 108 阅读 · 0 评论 -
C++ 常用代码总结
声明此篇记录个人总结的常用 C++ 代码,愿与大家分享,转载请注明出处。数组类1、 数组输入输出for(int i=0;i<10;i++) { cin >> a[i]; cout << a[i]; cout << " ";}字符串 1、C++ 单个字符 #include <iostream>char A;while(cin >> A)参考单个字符介绍 2、统计字符串中某个字符出现次数 方法原创 2020-05-11 09:04:32 · 283 阅读 · 0 评论 -
C++ public,private,protected
作用:Access Modifiers or Access Specifiers in a class are used to set the accessibility of the class members. That is, it sets some restrictions on the class members not to get directly accessed by the...原创 2020-05-04 09:11:23 · 178 阅读 · 0 评论 -
C++ vector
对vector 认识GeeksforGeeks Vector in C++ STL 一、为什么要用vector 而不用数组 ?Vector 相比于数组的优势 来自如下文章Advantages of vector over array in C++ Vector 是模板类 , C++ 实现;array 内置 ,C/C++Vector are implemented as dyna...原创 2020-04-30 14:44:41 · 128 阅读 · 0 评论 -
C++ 类
一、类声明 不用声明 一、类定义 class Solution // class Box // class Student // 类名首字母通常大写{ // 成员变量 int age; float score; // 成员函数}; // 很容易遗忘注意和python 类比较类定义时不能赋值(类定义时不占内存,创建对象后可赋值) 二...原创 2020-04-29 20:18:47 · 134 阅读 · 0 评论 -
C++ 判断数组为空
转载自判断数组为空tails/99290544转载 2020-04-29 13:41:49 · 4079 阅读 · 0 评论 -
C++ 函数
1. 函数声明 Function prototype (declaration) ,函数定义,函数调用函数声明 注意 函数声明一定要在main()函数之前,否则报错。If a user-defined function is defined after main() function, compiler will show error. It is because compiler is...原创 2020-04-28 10:39:43 · 274 阅读 · 0 评论 -
C++ 个人练习错误总结
1、注意中英文分号在 vs code中 , 英文分号加粗,中文没有;且输入错误会有红色波浪线提示。2、原创 2020-04-26 09:01:36 · 178 阅读 · 0 评论 -
c++ 指针理解
指针变量(指针)包含内存单元的地址,使用指针指向某个内存单元。那如何使指针P指向内存单元?如何获得指针P指向的内存单元的内容?赋为 NULL 值的指针被称为空指针。NULL 指针是一个定义在标准库中的值为零的常量NULL 是0指针不指向任何内存单元,利用常量NULL...原创 2020-04-25 09:57:10 · 187 阅读 · 0 评论 -
C++ 自学笔记 菜鸟驿站
Visual Stduio 快捷键注释/取消注释1)注释:组合键“Ctrl+K+C”;2)取消注释:组合键“Ctrl+K+U”。注意和python的区别1、#include <iostream>using namespace std;int main(){ cout << " hello world"; # 引号注意和python区别 getch...原创 2020-04-20 20:20:34 · 503 阅读 · 0 评论