- 博客(125)
- 收藏
- 关注
原创 C++笔记-八股
关键字inline 必须与函数定义体放在一起才能使函数成为内联,仅将inline 放在函数声明前面不起任何作用。inline函数的实现应放在头文件中。否则在其他源文件调用时需要重写内联函数定义。// inline 仅与函数声明放在一起inline void Foo(int x, int y) {} // inline 与函数定义体放在一起。
2023-11-22 09:27:13 264
原创 -- Configuring doneCMake Error: Error required internal CMake variable not set, cmake may not be bu
这个错误表明 CMake 在尝试为目标 "libmockturtle" 确定链接语言时遇到了问题。在 CMake 中,每个目标(比如可执行文件、库等)都需要有一个确定的语言类型,以便 CMake 知道如何设置相关的编译和链接选项;
2023-11-20 17:07:05 1140
原创 drawio使用
选定图形A的样式(ctrl+shift+c),选定另一个待处理图形B按(ctrl+shift+ v),即将图形A的样式复制到图形B上了;选中线条后,点击【调整图形】【线末端】进行调整
2022-12-05 09:27:07 3784 1
原创 c++: std::is_pointer::value
is_pointer是位于头文件下的模板。该模板用于检查给定类型T是否为指针类型。它返回一个布尔值,如果给定类型是指针变量,则返回true,如果给定类型不是指针变量,则返回false。模板只能具有类型T的参数,并检查给定类型是否为指针。
2022-11-26 11:10:05 512
原创 vscode:cannot open output file main.exe: Permission denied
ctrl+shift+esc打开任务管理器,找到 main.exe进程,点击【结束任务】没有终止正在运行的main.exe文件;
2022-11-18 18:43:38 1934
原创 c++编译报错:error: cannot convert ‘std::basic_string<char>::iterator’ {aka ‘__gnu_cxx::__normal_it
类似的,调用 std 中的排序函数也是如此,需要加入头文件:#include 修改后,重新make编译通过;
2022-10-31 19:54:52 2022
转载 C++11 使用using定义类型别名
这样我们在定义该结构体类型变量时,就可以使用MS作为类型名了。我们也可以使用#define来定义别名(使用预处理器)格式为:using 别名=数据类型。
2022-09-21 15:06:14 1027 1
原创 centos VS code中gdb调试无法显示STL内容的问题(仅显示内存地址信息)
若没有安装svn 先进行安装(注意安装目录的位置)在.gdbinit文件中添加以下代码。
2022-09-15 18:42:21 942
原创 centos更新gdb版本
3、生成makefile(进入gdb解压后的文件目录)4、将编译好的gdb拷贝到/usr/bin目录中。2、下载gdb指定源码包并解压;5、查看安装后gab版本信息。1、卸载原始版本gdb。
2022-09-15 10:05:39 1891 3
原创 调用ABC自带标准脚本文件
bashrc的前缀“.”是一个命名标准,它被设计用来在用户文件中隐藏那些用户指定的特殊文件;rc”是任何脚本类文件的后缀,这些脚本通常在程序的启动阶段被调用,通常是Linux系统启动时。如/etc/rs是Linux启动的主脚本,而.bashrc是当Linux的bash shell启动后所运行的脚本。在Linux中,最为常用的缩略语“rc”,它是名词“run command”(运行命令)的简写。:可执行文件abc和脚本文件abc.rc必须在同一目录下,否则abc无法识别脚本中命令;:读入aig文件——
2022-09-05 20:05:00 684
原创 基于for循环高效率遍历容器方法 C++
在遍历容器的时候,auto自动推导的类型是容器的value_type类型,而不是迭代器,而map中的value_type是std::pair,也就是说val的类型是std::pair类型的,因此需要使用vec.first,vec.second来访问数据;原因:在遍历容器的时候,在容器中插入一个元素导致迭代器失效了,因此,基于范围的for循环和普通的for循环一样,在遍历的过程中如果修改容器,都将造成迭代器失效;注意:在上述对容器的遍历是只读的,也就是说遍历的值是不可修改的,如果需要修改其中元素,需声明为。.
2022-08-28 11:46:58 3053
原创 PPT插入图片为任意形状
右键上图中形状→【设置形状格式】→【填充】→【图片或纹理填充】→插入图片来自文件→选择需要插入的.jpg文件;选中上图矩形右键→【编辑顶点】→任意拖动图形边界顶点,修改需要的图形形状;【插入】→【形状】→选择矩形;...
2022-08-27 18:51:15 2581
原创 寻找数组中第二大的数(c++)
具体的形式:先定义两个变量:一个变量用来存储数组的最大数,初始值为数组首元素,另一个变量用来存储第二大的数,初始值为整数的最小值INT_MIN;然后遍历数组元素,如果数组元素的值比最大数变量还大,更新最大数;若数组元素的值比最大值还小并且比第二大的数要大,更新第二大的数;其中:INT_MAX和INT_MIN是C/C++中的常量,分别表示最大最小整数,头文件是limits.h。思想:只通过一遍扫描数组找到第二大数;...
2022-08-15 17:12:56 3898
原创 解决vim与外界的复制粘贴(不用安装插件)
默认的vim不带系统剪切板与vim的交互的功能;要完成vim中的内容复制到系统剪切板,需要vim支持查看clipboard和xterm_clipboard前面的符号;加号。
2022-08-06 14:26:47 4978 2
原创 centos安装软件包报错:no package vim-gtk available
查看 vim相关软件包的名字,再进行对应列出的包名,进行安装;举例:安装vim-gtk软件包;
2022-08-06 10:53:46 739
原创 一些c++ case
clause.clear();与clauses.push_back(clause);可以及时释放不用暂存空间;其中stdvectorclauses;利用break推出此次循环,进入下一次循环;
2022-07-28 19:40:12 741
原创 关于ATPG
对电路进行测试,首先要解决的就是测试生成的问题。测试生成就是针对于特定电路的给定故障, 生成相应测试向量的过程,该测试向量使得故障电路和正确电路的输出不同,该过程解决两个主要问题:........................
2022-07-07 11:42:19 4976 8
原创 全局变量&局部变量
全局变量:其作用范围是“整个工程”,只需在一个源文件中定义,就可以作用于所有的源文件。当然,其他不包含全局变量定义的源文件需要用extern 关键字再次声明这个全局变量 静态全局变量:使用 static 关键字修饰,也具有全局作用功能,和全局变量区别在于如果该程序包含多个文件,其作用范围仅在定义的那个文件,不能作用于其它文件,这样即使两个不同的源文件都定义了相同名字的静态全局变量,它们也是不同的变量 局部变量:仅仅从定义的位置开始,到定义它的右花括号结束,只在函数执行期间存在,函数的一次调用
2022-06-22 16:53:51 746
原创 Latex
documentclass指定的文档类型,最广泛使用的文档类型有article(代表普通文章),beamer(幻灯片格式文档),ctexart(简体中文和英文混排),book, report.... 所有位于\begin{document}之前的内容都被称为前言(preamble),在这之前设置文档格式、页面尺寸、文档需导入的宏包等; [UTF8]指定文档的编码类型;UTF8是TeXworks编辑器默认使用的编码类型; 介于\begin{document}和\end{document}之间的内容称为
2022-06-02 11:17:49 4595
原创 STL的容器中存储对象和指针
STL的容器中既可以存储对象,也可以存储指针;STL容器的工作方式:1. 对基本数据类型,位拷贝;2. 对自定义的类类型对象,调用Copy构造函数,复制一份;STL容器中 存放指针与对象区别 遍历删除与释放操作_虫虫虫虫子的博客-CSDN博客c++中我相信大家经常要用到STL里面的各种容器来存放自己的数据,既然我们用的这么频繁那么就相应该有一些疑问?https://blog.csdn.net/AC_huang/article/details/29382629
2022-06-01 10:48:46 542
原创 c++ vector容器emplace_back
为在容器操作时尽可能的减少构造函数的调用和内存的拷贝,C++11 引入了emplace_back的方法,该方法可以改善往容器内推入对象元素时的效率。相比push_back,可以节省一次拷贝构造函数的调用从而提高插入效率; push_back() 向容器尾部添加元素时,首先会创建这个元素,然后再将这个元素拷贝或者移动到容器中(如果是拷贝的话,事后会自行销毁先前创建的这个元素);而 emplace_back() 在实现时,则是直接在容器尾部创建这个元素,省去了拷贝或移动元素的过程; em..
2022-05-31 17:02:22 7327
原创 vector嵌套容器(测试)
定义vector<vector> M; —— vector的嵌套使用,本质是vector元素里的每个元素也是vector类型。我们假设外层的vector的对象为M,为外层vector对象,则M中的每一个元素也是vector类型,记为N1,N2,N3……,为内层对象,则得先形成一个个的N1,N2等的vector对象,然后再将这些vector对象添加进入外层vector对象M中; 访问元素和二维数组相同,M[0][0],访问M中第一个vector对象的第一个元素; M中vector的个数:M
2022-05-22 17:56:42 309
原创 gitee码云克隆fatal: 无法连接到 gitee.com:gitee.com[0: 180.97.125.228]: errno=拒绝连接
以及遇到下列情况“无法克隆 'https://gitee.com/zfchu/alice' 到子模组路径 '/home/hkm/ALSO/also/lib/alice”;解决办法:修改.gitconfig文件如下:——将除码云账户信息以为的内容注释掉;1、ls -la找到.gitconfig文件;2、sudo vim .gitconfig用#进行注释修改;3、再次clone即可同时解决上述两种情况的问题,克隆成功;...
2022-05-19 16:50:20 1745
原创 Ubuntu 配置github SSH出现Host key verification failed
若是在箭头处,是按enter进行操作,将报错“Host key verification 头处直接输入"yes"则不会报错,效果如上截图;
2022-05-19 14:15:21 514
原创 Latex学习
常用快捷键ctrl+t——注释选定代码; ctrl+u——取消选定代码注释; F5 ——构建并查看(对应双绿色三角); F6 ——编译(对应单绿色三角);
2022-05-18 16:33:41 343
原创 #define VAR(x) (((x) > 0) ? (x) : (-(x)))——c++
#include <iostream>using namespace std;#define POSITIVE(x) ((x) > 0) //x为正数,输出为1;x为负数,输出为0#define NEGATIVE(x) ((x) < 0) //x为正数,输出为0;x为负数,输出为1#define VAR(x) (((x) > 0) ? (x) : (-(x))) //输出x的绝对值int main(){ int a = 9; int b = .
2022-05-18 10:41:28 198
原创 关于指向数组的指针(c++测试)
数组名是数组首地址;指针指向数组内存空间首地址;#include <iostream>using namespace std;int main(){ int atomNum = 10; int* nodeStatus = new int[atomNum]; for (int i = 0; i < atomNum; i++) nodeStatus[i] = i; int ptr = 1; cout << nodeStatus << e.
2022-05-17 15:25:56 168
原创 c++文件输入输出流fstream指定文件路径正确书写
1、直接复制文件路径读取文件流(❌错误的,无法读取成功)fstream afile;//afile.open("E:\C++\test", ios::out | ios::in); 复制test的路径只会复制到文本test的上一层afile.open("E:\C++\test\test.txt", ios::out | ios::in); //这是test.txt正确路径2、fstream文件流读取,路径名中的斜杠要双写,如:"D:\\MyFiles\\ReadMe.txt"
2022-05-16 14:50:31 7730
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人