C++
文章平均质量分 72
故渊~
这个作者很懒,什么都没留下…
展开
-
内存对齐规则--图文详解
首先得了解 结构体对齐规则:1)第一个成员在与结构体变量偏移量为0的位置处。2)其他成员变量要对齐到某个数字(对其数)的整数倍的地址处。对其数=编译器默认的一个对其数与该成员大小的较小者。vs中默认的值是8Linux中默认的值是43)结构体总大小为最大对其数(每一个成员变量都有一个对其数)的整数倍。4)如果嵌套了结构体对齐到自己的最大对其数是整数倍处,结构体的整体大小就是最大对齐...原创 2018-09-19 16:52:39 · 4581 阅读 · 1 评论 -
如何快速转载别人的博客 详解
一、在要转载的博客处右键点击检查/F12二、在Elements中寻找body标签,点击三角标,打开body标签三、在body中找div class=“container clearfix” id=“mainbox”,点击三角标,打开div标签四、在div标签中找到main,进而找到 class=“blog-content-box”五、在class=“blog-content-box...原创 2019-04-03 15:31:52 · 215 阅读 · 0 评论 -
二叉树的各种遍历详解--递归/非递归代码实现
二叉树的遍历是指从根结点出发,按照某种次序依次访问二叉树中所有结点,使得每个结点被访问一次,且仅被访问一次。二叉树的遍历方式常用的有四种:前序遍历、中序遍历、后序遍历和层序遍历。前序遍历前序遍历:简单来说就是:根->左->右。规则:若二叉树为空,则空操作返回,否则先访问根结点,然后前序遍历左子树,再前序遍历右子树。递归实现://先序遍历,递归法void PrevO...原创 2019-04-21 17:57:30 · 448 阅读 · 1 评论 -
空类和空结构体的大小
空类和空结构体在学习C语言和C++的过程中,我们可能都有一个问题,一个空类/空结构体的大小是多少呢?首先我们写代码来测试一下:#include<iostream>#include<stdio.h>struct test1 //空结构体{};class test2 //空类{}; ...原创 2019-04-18 12:26:34 · 956 阅读 · 0 评论 -
CSDN-markdown编辑器语法——字体、字号与颜色
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过类似HTML的标记语法,它可以使普通文本内容具有一定的格式。但是它本身是不支持修改字体、字号与颜色等功能的! CSDN-markdown编辑器是其衍生版本,扩展了Markdown的功能(如表格、脚注、内嵌HTML等等)!对,就是内嵌HTML,接下来要讲的功能就需要使用内嵌HTML的方法来实现。字体、字号与颜色<font ...转载 2019-04-18 12:32:22 · 517 阅读 · 0 评论 -
Markdown表格快速生成
在Markdown上写一个表格真是让人头疼的事情,写的不流畅还要担心格式。我为大家总结了以下三种方法,前两种大家或许司空见惯了,第三种是神器。。。一、md原生 | 水果 | 价格 | 数量 | | -------- | -----: | :----: | | 香蕉 | $1 | 5 | | 苹果 ...转载 2019-04-18 12:35:34 · 984 阅读 · 0 评论 -
前置++和后置++的区别
今天在阅读《google c++ 编程风格》的文档的时候,5.10. 前置自增和自减:有一句话引起了我的注意:对于迭代器和其他模板对象使用前缀形式 (++i) 的自增, 自减运算符.,理由是 前置自增 (++i) 通常要比后置自增 (i++) 效率更高。于是我查了查前置++和后置++的区别。注意:...转载 2019-05-07 18:37:26 · 1152 阅读 · 0 评论 -
STL源码剖析--空间配置器
空间配置器是最不需要介绍的东西,他总是隐藏在容器(container)的背后,默默工作,默默付出。allocator 之所以说是空间配置器而不是内存配置器,因为空间不一定是内存,也可以是磁盘或者其它辅助存储介质。空间配置器的标准接口allocator::allocator() default constructorallocator: :allocator (const allocato...原创 2019-07-29 18:21:18 · 173 阅读 · 0 评论 -
date日期类实现-C++
#include<iostream>#include<assert.h>#include<vector>using namespace std;class Date{public: //构造函数 Date(int year = 1900, int month = 1, int day = 1){ this->_year = year...原创 2019-08-05 11:29:30 · 267 阅读 · 0 评论 -
vector详解-STL序列式容器
vector介绍首先,我们来看看C++标准库对 vector 的解释:vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。本质讲,vector使用动态分配数组来存储它的元素。当新元素插入时候,这个数...原创 2019-08-07 10:48:16 · 289 阅读 · 0 评论 -
函数重载,函数重写(同名覆盖),函数重定义(同名隐藏)
三重-------函数重载,函数重写(同名覆盖),函数重定义(同名隐藏) 一、函数重载直接上图吧!概念:函数重载是一种特殊情况,C++允许在同一作用域中声明几个类似的同名函数,这些同名函数的形参列表(参数个数,类型,顺序)必须不同,常用来处理实现功能类似数据类型不...原创 2019-03-17 15:09:47 · 2133 阅读 · 0 评论 -
【C++】unordered_map,unordered_set,map和set的用法和区别
参考链接:https://blog.csdn.net/zjajgyy/article/details...转载 2019-03-16 18:03:23 · 731 阅读 · 0 评论 -
引用和指针
引用引用不是定义一个新的变量,而是给一个已经定义的变量重新起个别名定义的格式为:类型& 引用变量名 = 已定义过的变量名int& b = a; b是a的引用 / b是a的别名引用的特点:1.一个变量可取多个别名2.引用必须初始化3.引用只能在初始化的时候引用一次,不能改变为再引用其他的变量。const的引用首先回忆一下C语言阶段的const有关知识:(判断con...原创 2018-09-19 16:12:05 · 99 阅读 · 0 评论 -
继承规则及派生类的成员函数
继承是面向对象复用的重要手段。通过继承定义一个类,继承是类型之间的关系建模,共享共有的东西,实现各自本质不同的东西。成员访问限定符&继承关系:这是一个简单的继承关系:#include<iostream>#include<Windows.h>using namespace std;class person{public: char* nam...原创 2018-09-19 16:38:40 · 2721 阅读 · 0 评论 -
单继承、多继承、菱形继承
在之前的博客里面,我总结了继承的规则及派生类的成员函数,具体参考这篇博客,https://blog.csdn.net/lvxin15353715790/article/details/82774337在这篇博客中,我总结一下单继承、多继承以及菱形继承的一些知识点。单继承–一个子类中只有一个直接父类时称这个继承关系为单继承Granduate 只有 Student 一个直接父类多继承–一个子...原创 2018-09-28 19:37:03 · 158 阅读 · 0 评论 -
【剑指offer】把字符串转换成整数
题目描述:将一个字符串转换成一个整数(实现Integer.valueOf(string)的功能,但是string不符合数字要求时返回0),要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0。输入描述:输入一个字符串,包括数字字母符号,可以为空输出描述:如果是合法的数值表达则返回该数字,否则返回0示例:输入:+2147483647 1a33输...原创 2018-11-06 18:42:17 · 107 阅读 · 0 评论 -
【剑指offer】字符串最后一个字符的长度
一原创 2018-11-06 20:55:10 · 184 阅读 · 0 评论 -
【LeetCode】最后一个单词的长度
之前的博客里面我讲了《剑指offer》中的最后一个单词的长度,参考https://blog.csdn.net/lvxin15353715790/article/details/83793174因为《LeetCode》中的不同,所以我总结一下这个题。题目描述:给定一个仅包含大小写字母和空格 ’ ’ 的字符串,返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0 。说明:一个单词是指...原创 2018-11-12 18:29:53 · 149 阅读 · 0 评论 -
引用和指针的区别和联系
一、引用的适用场景1.引用变量int a = 1;int& b = a;2.引用做函数的参数。函数中如果不需要对形参进行修改,最好在引用前加constvoid swap(int& left.int&right){ int temp = left; right = left; left = temp;}3.引用做函数的返回值。如果返回值出了函数的作用...原创 2019-03-19 16:10:41 · 218 阅读 · 0 评论 -
C++中STL常用容器的优点和缺点
我们常用到的STL容器有vector、list、deque、map、multimap、set和mu...转载 2019-03-16 17:52:54 · 173 阅读 · 0 评论 -
vector 模拟实现
#define _CRT_SECURE_NO_WARNINGS 1#include<iostream>#include<algorithm>#include<assert.h>#include<Windows.h>#include<string>using namespace std;namespace myvect...原创 2019-08-07 18:27:58 · 248 阅读 · 0 评论