![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 68
关于C++的记录
唔希迪西
这个作者很懒,什么都没留下…
展开
-
笔记1:关于VNC的基础了解
注:vnc-viewer是一个用于实现。的软件,还有其他的软件也可以实现这个功能。原创 2023-07-26 22:00:05 · 294 阅读 · 0 评论 -
笔记25:头文件<iostream>和<cstdio>有什么区别
(1)他们的不同之处:类型安全提供了类型安全的输入和输出,因为它使用了C++的重载运算符来适应不同的数据类型,从而减少了类型错误的可能性。中的函数(如printf和scanf)是非类型安全的,因为它们使用格式化字符串,需要手动指定要读取或写入的数据类型,如果格式化字符串与实际数据类型不匹配,可能会导致运行时错误。面向对象是面向对象的,它基于C++的类和对象模型,允许你通过操作流对象来执行输入和输出操作。原创 2023-09-13 14:40:15 · 2041 阅读 · 0 评论 -
笔记26:C++在【namespace调用函数】/【源文件中定义函数,头文件声明调用函数】有何不同?
总结:标准库用来定义功能;命名空间用来定义实现标准库中的功能所要用到的函数+对象+变量;相当于第一行把以后要用的标准库引入,但是还不能直接使用标准库中定义的功能,还要把标准命名空间中的东西释放出来/使用std::引出来才行。第一行:用来通过头文件引入C++标准库第二行:用来将标准命名空间中的【函数+对象+变量】释放出来。原创 2023-09-13 16:04:40 · 131 阅读 · 0 评论 -
笔记27:C++中是否有判断的链式法则
eg1:正常输出aaaaeg2:不输出任何值解释:因为python对于同一优先级的判断符号【>,<,>=,<=,==】,具有链式法则。程序中的【1 < x < 2】其实就是【(1 < x) && (x < 2)】,python自动将其拆分为了两个子条件aaaa。原创 2023-09-15 19:27:49 · 56 阅读 · 0 评论 -
笔记28:C++函数【memset()】的用法
mp是一个数组;INF是一个int类型的数据,代表无穷大;将数组mp中所有的元素都用无穷大填充也就是说:这个函数在这一行中实现的功能是本来函数memset()中的第三个参数应该是字符数(详见下面的文档截图),但是这里ChatGPT为何解释为字节数,是因为如下截图:即一个字符就是占据一个字节,所以这两种说法都对aaaaa。原创 2023-09-19 00:24:31 · 102 阅读 · 0 评论 -
笔记29:关于设置无穷大为【#define INF 0x3f3f3f3f】的原因
INF=0x3f3f3f3f是 什么意思?_AEP_WYK的博客-CSDN博客总结一下:一共4个原因1.因为 0x3f3f3f3f 他的十进制数字和 0x7fffffff 一样,数量级都是10的9次方级,都足够大可以当作无穷大使用。原创 2023-09-19 17:36:11 · 221 阅读 · 0 评论 -
笔记30:如何跳出cin语句 -- 文件终止符EOF/控制台终止符Ctrl+Z
在学习Dijstra算法的时候对一行程序不理解,从而深入思考:对这行代码的解释:疑问:C语言的库<cstdio>中的库函数scanf在读取到输入的文件的终止符EOF后即停止读取;那么C++的库<iostream>中的cin输入流对象也有相似的功能吗?cin是如何读取文件的?cin是如何读取控制台数据的?aaaaa注意:1. 如果cin成功输入了数据,那么这个语句会返回true;2. 如果cin并未成功输入数据,那么这个语句会返回false;aaaaacin既可以通过键盘从控制台输入数据,也可以通过文件原创 2023-09-19 22:13:49 · 455 阅读 · 0 评论 -
笔记31:【#include <bits/stdc++.h>】中的头文件是干什么用的
但是在我自己敲的时候,发现报错,报错提示为:aaaa。原创 2023-09-20 17:23:38 · 210 阅读 · 0 评论 -
笔记32:使用【关键字enum】定义枚举变量 -- 1
1.enum -- 枚举关键字2.enumType -- 是通过关键字enum创建的新的数据类型,这种数据类型被称为枚举3.Monday -- 是该数据类型(枚举)中定义的符号常量,被称为枚举量,默认值为0~6方式1:在定义枚举类型时定义枚举变量方式2:先定义枚举类型,后定义枚举变量(类似于 int a)aaaaa二.用枚举量对枚举变量 / 非枚举变量。原创 2023-09-27 17:30:08 · 114 阅读 · 0 评论 -
笔记33:使用【关键字enum】定义枚举变量 -- 2
假如定义 enum enumType1 { First=-5,Second=14,Third=10 };则枚举的下限是-8+1=-7(-8小于最小枚举量-5,且为2的幂)假如定义enum enumType1 { First=-5,Second=14,Third=10 };则枚举的上限是16-1=15(16大于最大枚举量14,且为2的幂)枚举的上限是【大于最大枚举量的】【最小的2的幂】【再减去 1】注意1:未被初始化的枚举值的值默认将比其前面的枚举值大1。注意2:枚举量的值可以相同。原创 2023-09-27 17:30:12 · 69 阅读 · 0 评论 -
笔记77:理解C++中头文件和源文件的作用【程序编译过程】
很显然,答案是不可能。但是有一个很简单地办法,可以帮助程序员们省去记住那么多函数原型的麻烦:我们可以把那几百个函数的声明语句全都先写好,放在一个文件里,等到程序员需要它们的时候,就把这些东西全部 copy 进他的源代码中。这个方法固然可行,但还是太麻烦,而且还显得很笨拙。于是,头文件便可以发挥它的作用了。所谓的头文件,其实它的内容跟 .cpp 文件中的内容是一样的,都是 C++ 的源代码。但头文件不用被编译。原创 2024-03-07 16:51:51 · 1197 阅读 · 0 评论 -
笔记82:关于 C++ 中的 swap 函数
背景:在刷题时发现参考代码使用了swap函数,但是是用来交换一个vector容器中的两个元素的;但是我依稀记得标准模板库中vector函数自带的swap函数是用来交换两个容器内所有的元素的;原创 2024-03-28 15:55:14 · 809 阅读 · 0 评论 -
笔记86:关于【#ifndef + #define + #endif】的用法
时,你可能会在多个源文件中包含它,以便在这些源文件中使用该头文件定义的函数、类或其他声明。如果你在多个源文件中都包含了同一个头文件,那么当你将整个工程统一编译,希望链接成一个完整的可执行文件时,就会出现大量错误,因为每一个相同的头文件都会进行所谓的“重定义”,导致重复定义的错误。后面没有跟着一个具体的值时,它实际上是定义了一个宏,但它并没有给这个宏赋予一个特定的值。在这种情况下,它通常用于条件编译,起到一个开关的作用。如果之前已经包含过,那么就不会再次包含,这样就避免了重复定义的问题。原创 2024-05-06 22:24:32 · 354 阅读 · 0 评论 -
笔记90:C++中sort函数的使用
函数原型:sort ( iterator beg , iterator end , _Pred )作用:将迭代器beg和end之间的元素进行排序注意1:使用之前包含头文件 ,这个函数不是STL中定义的;注意2:如果用STL中定义的针对某个容器类型的sort函数,则要包含头文件 ;原创 2024-05-22 15:09:04 · 541 阅读 · 0 评论 -
笔记93:关于 C++ 中的 Eigen 库
Eigen::Vector2d x(1,2) // 2维向量Eigen::Vector3d x(1,2,3) // 3维向量Eigen::VectorXd x(n) // 自定义n维向量Eigen::Matrix2d mat // 2维矩阵Eigen::Matrix3d mat // 3维矩阵Eigen::Matrix4d mat // 4维矩阵Eigen::MatrixXd mat(m,n) // 自定义m行,n列矩阵// 自定义m行,n列矩阵。原创 2024-06-03 22:14:19 · 539 阅读 · 0 评论