C++对象内存模型
参考链接: https://www.miaoerduo.com/2023/01/19/cpp-object-model/ https://www.cnblogs.com/pandamohist/p/13882020.html 前言 C++的三大特性是封装、继承和多态。 本节内容将详细介绍单一继承、多重继承、重复继承、虚拟继承等不同的继承方式的对象内存模型。 ...
参考链接: https://www.miaoerduo.com/2023/01/19/cpp-object-model/ https://www.cnblogs.com/pandamohist/p/13882020.html 前言 C++的三大特性是封装、继承和多态。 本节内容将详细介绍单一继承、多重继承、重复继承、虚拟继承等不同的继承方式的对象内存模型。 ...
1. C语言可变参数 c中典型的变参函数是我们已经用得非常熟练的printf和scanf函数,它们都可以接受不确定个数的参数,它们的函数声明形式如下: int printf(const char *format, ...); int scanf(const char *format, ...); 两个函数后面的...是占位符,并不是参数,而是告诉编译器,该函数是变参函数,不管该函数使...
1. 位操作基础 基本的位操作符有与、或、异或、取反、左移、右移这6种,它们的运算规则如下所示: 符号 描述 运算规则 & 与 两个位都为1时,结果才为1 | 或 两个位都为0时,结果才为0 ...
参考链接:https://www.midlane.top/wiki/pages/viewpage.action?pageId=26183116 1.补码与浮点数 计算机采用二进制表示数据,但是从数学意义上,使用二进制并不能表示负数。因为二进制每一位的权值都大于0。为了解决这个问题,人们在二进制数据上使用了符号位,通过符号位来表示数据的正负。符号位是数据的最高位,当这一位为0时,表示数据...
1.指针数组 指针数组可以说成是”指针的数组”,首先这个变量是一个数组,其次,数组的所有元素都是指针类型,在32位系统中,指针占四个字节。 char* arr[4] = {"hello", "world", "zhejiang", "hangzhou"}; //arr就是我定义的一个指针数组,它有四个元素,每个元素是一个char *类型的指针,这些指针存放着其对应字符串的首地址。 这...
1. extern 1.1 使用 extern是一个关键字,可以用来修饰函数和变量,当extern修饰一个变量或函数时时,就是在声明这个变量(函数),告诉编译器在外部文件中已经有这个变量(函数),直接通过编译就行了,别给我报错。 一般我们的项目会有很多的.cpp文件,当我们需要在一个文件中使用另外一个文件中的变量时,就需要用到extern 具体用法示意如下: // file...
Introduction - MapReduce 前言:笔者建筑学毕业,计算机知识全靠自学,听说这个比较锻炼能力,因此尝试去做。因为只学习了C++,而网上的所有LAB都是用go实现的,懒得去学go了,直接用C++实现,当然,本人菜狗一只,几乎全程参考了大佬的代码,以下是链接:https://github.com/tjumcw/6.824 除此之外还参考了一些笔记: 1.知...
感谢关注~ 第一篇博文,希望能坚持下来