
C++知识
文章平均质量分 80
C++知识
qaaaaaaz
这个作者很懒,什么都没留下…
展开
-
父类指针指向子类对象和父类引用指向子类对象
C++分为静态多态和动态多态,动态多态是子类重写父类基函数实现的。原创 2023-09-05 22:35:10 · 186 阅读 · 0 评论 -
VS Code中C++程序的调试(Debug)功能
有一个.vscode文件,存放当前工作区相关配置文件的目录。原创 2023-08-12 22:11:45 · 724 阅读 · 0 评论 -
C++利用mutex和thread实现一个死锁
【代码】C++利用mutex和thread实现一个死锁。原创 2023-08-08 18:59:41 · 214 阅读 · 0 评论 -
C++—异常与类型转换、大小端存储、不使用额外空间的情况下交换两个数
大端:高字节放在低地址小端:低字节放在低地址。原创 2023-07-05 22:19:31 · 254 阅读 · 0 评论 -
C++—volatile、mutable、explicit关键字
有时候,我们需要在const函数里面修改一些跟类状态无关的数据成员,那么这个函数应该被mutable来修饰,并且放在函数后面关键字的位置。用户只能用const_cast来获得对类型接口的完全访问,此外volatile像const一样,会从类传递到它的成员。当两个线程都要用到某一个变量,而且这个变量的值会被改变的时候,应该用volatile声明,原创 2023-07-05 22:18:47 · 281 阅读 · 0 评论 -
C++—函数、对象复用、零拷贝、标准库
C/C++的函数参数是通过压入堆栈的方式来给函数传参数的(堆栈是一种先进后出的数据结构),最先压入的参数最后出来,在计算机的内存中,数据有2块,一块是堆,一块是栈(函数参数及局部变量在这里),而栈是从内存的高地址向低地址生长的,控制生长的就是堆栈指针了,最先压入的参数是在最上面,就是说在所有参数的最后面,最后压入的参数在最下面,结构上看起来是第一个,所以最后压入的参数总是能够被函数找到,因为它就在堆栈指针的上方。标准函数库: 这个库是由通用的、独立的、不属于任何类的函数组成的。函数库继承自 C 语言。原创 2023-07-05 22:18:27 · 1012 阅读 · 0 评论 -
C++ thread编程(Linux系统为例)—thread成员函数与thread的创建方法
c++ 11 之后有了标准的线程库:std::thread。原创 2023-05-21 20:11:32 · 1705 阅读 · 0 评论 -
C++ 从代码到可以执行的过程(预编译、编译、汇编、链接)(以Linux为参考)
参考。原创 2023-05-20 22:48:16 · 2189 阅读 · 0 评论 -
const,static关键字,extern“C“用法
普通成员变量存储在堆或者栈中,而静态成员变量存储在静态全局区。在函数内部定义就可以控制作用域。只需要进行一次初始化(在程序刚开始运行的时候就完成初始化),具有记忆性,作用范围与局部变量相同,函数退出后仍然存在,但是不能使用一共又两种变量存储在静态存储区:全局变量和static变量,但是static可以控制变量的可见范围。原创 2023-05-19 14:37:55 · 401 阅读 · 0 评论 -
C++中有关于字符串的一些问题(strlen,sizeof,strcpy等)
一个指针占用内存大小和编译环境有关,而与机器位数无关。原创 2023-05-19 14:38:33 · 426 阅读 · 0 评论 -
C++ STL—vector,map,set,list,deque等
STL是标准模板库,包括算法、容器和迭代器。原创 2023-05-14 12:29:53 · 700 阅读 · 0 评论 -
C++11新特性—nullptr,bind,lambda函数,智能指针,左值右值,移动语义与完美转发
NULL一般来自C语言,是宏定义,在C++语言中,NULL被定义为整数0,但是这样会无法与整数0区分,所以C++11引入新特性nullptr,可以区分整数与指针特性,但是仍然存在问题-不能区分指针类型,这种情况下,必须显示的指明参数类型。原创 2023-05-13 11:38:57 · 1107 阅读 · 0 评论 -
C++ 类与对象(三)—空类、友元函数、类大小
友元用于在类之间共享私有成员,一个类将另一个类声明为友元,这样就可以让友元类访问私有成员。友元可以是一个函数、一个类或者一个成员函数(一个类将另一个类的成员函数声明为其友元)。private :// 可以访问 MyClass 的私有成员 }原创 2023-05-09 21:57:28 · 777 阅读 · 0 评论 -
C++ 类与对象(二)—类成员初始化、静态分配和动态分配、this指针
因为这个时候内存空间暂时没有被系统收回,这段内存是可以访问的,但是里面的值是不能确定的。造成系统崩溃。原创 2023-05-06 19:34:45 · 1809 阅读 · 0 评论 -
c++面向对象之封装、继承、和多态
派生类中会包含并且使用从基类继承而来的成员,为了使用这些成员,派生类必须知道他们是什么。代码来源阿秀的学习笔记class A {// 1,空对象,只有一个占位 cout原创 2023-05-05 22:17:37 · 1802 阅读 · 0 评论 -
C++和其它语言的比较
参考。原创 2023-05-05 22:12:53 · 476 阅读 · 0 评论 -
C++类与对象(一)—类定义、构造函数、struct与class的区别
类是C++的核心特性,通常被称为用户定义的类型。类用于指定对象的形式,它包含数据表示法和用于处理数据的方法。类中的数据和方法称为类的成员,函数在一个类中被称为类的成员。参考C++中的五种构造函数构造函数是一种特殊的函数,用来在对象实例化的时候初始化对象的成员变量。C++有五种构造函数参考什么是构造函数?未提供显示初始值的时候,是用默认构造函数。包括以下两种情况类只含有内置类型或者复合类型的成员的时候,编译器不会为类合成默认构造函数;默认构造函数“被需要”(对于编译器)的时候,编译器才会合成默认构造函数。原创 2023-05-02 23:12:48 · 1475 阅读 · 0 评论 -
C++中stringstream用法
stringstream是C++中的一个类,它允许将字符串作为流处理,这意味着可以使用熟悉的流输入,输出语句从中读取或者写入。原创 2023-04-29 21:31:33 · 120 阅读 · 0 评论 -
C++ srand()和rand()用法
参考计算机的随机数都是由伪随机数,即是由小M多项式序列生成的,其中产生每个小序列都有一个初始值,即随机种子。(注意: 小M多项式序列的周期是65535,即每次利用一个随机种子生成的随机数的周期是65535,当你取得65535个随机数后它们又重复出现了。原创 2023-05-01 09:57:45 · 754 阅读 · 0 评论 -
C++中的宏#define
/ 定义圆周率 # define PI 3.14159265 // 定义一个空指针 # define NULL((void *) 0) // 定义一个宏的名字为 SYSTEM_API,但是没有值 # define SYSTEM_API3.14159265// 定义圆周率 # define PI 3.14159265 // 定义一个空指针 # define NULL((void *) 0) // 定义一个宏的名字为 SYSTEM_API,但是没有值 # define SYSTEM_APIvoid0。原创 2023-04-25 21:31:26 · 1977 阅读 · 0 评论 -
C++内存管理
图片来源。原创 2023-04-21 21:15:14 · 464 阅读 · 0 评论 -
new、delete和malloc、free
图片来源。原创 2023-04-20 19:42:08 · 974 阅读 · 0 评论 -
C++ 中的指针和引用
指针大小与编译环境有关,而与机器无关,64位编译环境下是8个字节,32位下是4个字节。原创 2023-04-10 22:09:34 · 324 阅读 · 0 评论