C++
ABC我的博客
主要是自己平时回顾起来方便
工作忙没时间更新了,望理解
展开
-
C++指针和引用的函数调用格式
#include< iostream>using namespace std;#pragma warning(disable:4996)#include < string>void changeValue(int *p){*p = 10;}void changeValue2(int &r)//r为传进来参数的别名{r = 10;}int ma...原创 2018-09-25 16:16:31 · 1461 阅读 · 1 评论 -
C++String中substr,erase和find的用法
1、substr()的使用:string str.substr(nStart) //默认 从str字符串nStart位置开始截取到str结束为止string str.substr(nStart, nLength) // 从str字符串nStart位置开始截取nLength个字符!如果nLength>剩余的字符则截取到str结束为止举例:string ...原创 2019-04-23 10:10:31 · 3109 阅读 · 1 评论 -
C++中String类的字符串分割实现
转:https://www.cnblogs.com/carsonzhu/p/5859552.html1.简洁高效的方法(不过只能包含一个分隔符):#include <vector>#include <string>#include <iostream>using namespace std;void SplitString(const string...原创 2019-04-23 10:45:58 · 3473 阅读 · 0 评论 -
QT-C++ 输出反斜杠\和双引号”
QT:QString str = “”",str1 = “’”;qDebug() << str << str1;输出: “”" “\”C++string str = “”", str1 = “\”;cout << str << " " << str1 << endl;输出:" ...原创 2019-04-23 16:43:22 · 10427 阅读 · 0 评论 -
STL map的介绍与使用
STL map的介绍与使用1、map简介map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。2、map的功能自动建立Key - value的对应。key 和 value可以是任意你需要的类型。根据key值快速查找记录,查找的复杂度基本是Log(N),如果有1000个记录,最多查...原创 2019-04-23 21:27:03 · 2116 阅读 · 0 评论 -
STL set的介绍与使用
/*C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时候,STL按照程序员的使用习惯,以成员函数方式提供的常用操作,如:插入、排序、删除、查找等。让用户在ST...原创 2019-04-25 17:04:15 · 284 阅读 · 0 评论 -
C++ 文件的高速存储。5M只需0.003s
目前做一个项目需要高速存储下来。实测5M只需0.003s。我看了一下PCIE也是这种方式存储的。之前用QT的方式写文件,大概需要0.05s,还是c语言的写法快得多unsigned char *p = new unsigned char[SIZE];//对p进行赋值操作,但是有要求必须是无符号char类型的数据,如果不是需要自定义转换为8位+低8位,比如65535可以转换为高八位0XFF和低八...原创 2020-04-01 10:20:14 · 1957 阅读 · 3 评论 -
LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
用VS2010编译C++项目时出现这样的错误:LNK1123: 转换到 COFF 期间失败: 文件无效或损坏(这个方法比较好,在用qt运行时出现问题也能解决)复制 C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7601.17514_none_ba1c770af0b2031b 目录下的 cvtres....原创 2019-05-31 21:18:39 · 155 阅读 · 0 评论 -
C++ 递归求数组的平均数
函数返回值类型必须为浮点型。不能为int#include <iostream>using namespace std;float arrayavg(int *A,int n){//返回值类型必须为浮点型。不能为int if(n==0) return A[n]; else return (A[n]+n*arrayavg(A,n-1...原创 2019-05-29 17:16:13 · 3688 阅读 · 0 评论 -
32/64位平台下char、short、int、long、指针等类型分别占多少字节
1、不同系统下数据类型的字节大小32位系统和64位系统的区别在于long 和指针其中,彩色部分代表的意思是该类型在三种平台下所占字节大小不同,黑色说明所占字节数相同!2、32位系统下各个数据类型的取值范围...原创 2019-06-11 22:11:42 · 18632 阅读 · 1 评论 -
C++ cin与getline的用法
代码:#include <iostream>#include <string>using namespace std;int main (){ string s1, s2, s0; cin >> s0;//遇到空格或换行结束输入 getline(cin, s1);//读取一整行输入 getline(cin, s2,...原创 2019-09-03 20:59:33 · 556 阅读 · 0 评论 -
C++删除字符串中的数字
功能:删除删除字符串中的数字代码:#include<iostream>#include<string>#include <iterator> //#include <algorithm> using namespace std;int main(){ string str=("a...原创 2019-09-03 21:58:42 · 7549 阅读 · 1 评论 -
C++数据类型转换:string与char*,string与int
#include < string >string与char*的相互转换:(1) char * 转stringchar * cp = “hello world”;string str = cp;//操作符重载string str1( cp); //构造函数(2)string 转char *string str = “hello world”;char *cp = st...原创 2019-04-02 20:32:19 · 203 阅读 · 0 评论 -
C++笔试输入注意事项(原创)
总结:(1)最重要的就是审题,输入输出的描述,输入输出的示例。输入描述:输入多行,先输入随机整数的个数,再输入相应个数的整数【注意】这种就要注意,第一行是表示后面输入的个数,不能将第一行的值作为数据输入(2)是一个测试案例还是多个,还有就是看编译后的提示,一般你如果没有用while(cin >> num) ,编译后会提示说:答案错误:您提交的程序没有通过所有的测试用例,cas...原创 2019-04-01 22:49:55 · 1069 阅读 · 1 评论 -
C++函数调用的解析过程(C++ primer)
理解函数调用的解析过程对于理解C++的继承至关重要,假定我们要调用p->mem()(或者obj.mem()),则依次执行以下四个步骤:(1) 首先确定p(或obj)的静态类型,即指针或引用声明时的类型(2) 在p(或obj)的静态类型对应的类中查找men。如果找不到,则依次在直接基类中不断查找直至达到继承链的顶端。找不到则报错(3) 一旦找到了mem,就常规的类型检查以确认对于当前找...原创 2019-04-04 21:41:18 · 463 阅读 · 0 评论 -
VS2010-VS2013-VS2015已停止工作解决方案
一不小心搞坏了,只能这样打开VS了对VS2010-VS2013-VS2015三个版本都适用在doc界面中输入:devenv/Safemode原创 2019-01-21 10:51:36 · 1932 阅读 · 1 评论 -
VS报错解决方案 error MSB8020: The build tools for v140 (Platform Toolset = 'v140') cannot be found
VS2013编译报错解决方案:原创 2019-01-21 11:01:56 · 1869 阅读 · 1 评论 -
解决方案 VS2013error MSB8031: Building an MFC project for a non-Unicode character set is deprecated
遇到这种问题实际上就是需要安装一个vc_mbcsmfc.exe双击就可安装,如果VS2013已打开,先关闭2013再编译就OK了原创 2019-01-21 11:11:35 · 1681 阅读 · 0 评论 -
海康威视demo-MFC综合示例-MFC分功能示例-成功编译
最近项目用到海康的产品,在官网上找到SDK后(这个demo真的大,光是.cpp就有800多个),用VS2015编译以就有一些类似于系统配置的错误,后面看到编译环境说明中提示:VS2013 + vc_mbcsmfc插件。就下载了一个VS2013(链接中文版:http://download.microsoft.com/download/B/1/9/B1932B8C-1046-4773-A1DD-4AB...原创 2019-01-21 11:34:02 · 5064 阅读 · 0 评论 -
struct和typedef struct
struct和typedef struct1 首先://注意在C和C++里不同 在C中定义一个结构体类型要用typedef: typedef struct Student(C中推荐用这种) { int a; }Stu; 于是在声明变量的时候就可:Stu stu1;(如果没有typedef就必须用struct Student stu1;来声明) ...原创 2019-02-27 20:51:22 · 1153 阅读 · 1 评论 -
C++ error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead.
编译报错:error C4996: ‘strcpy’: This function or variable may be unsafe. Consider using strcpy_s instead.解决方案:#pragma warning(disable:4996)原创 2019-02-24 15:46:00 · 2182 阅读 · 0 评论 -
static
staticC++的static有两种用法,面向过程程序设计中的static和面向对象程序设计中的static前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。1 面向过程static:1.1 静态变量1.1.1 静态全局变量静态全局变量有以下特点:1、 该变量在全局数据区分配内存;2、 未经初始化的静态全局变量会被程序自动初始化为0;3、 静态全局变量在...转载 2019-02-26 10:03:17 · 179 阅读 · 0 评论 -
strlen与sizeof的区别
在了解strlen与sizeof的区别之前,先来了解下字符数组:char a[] = {‘C’,’+’,’+’,};//不含空字符’\0’。char a1[] = {‘C’,’+’,’+’,’\0’};//显式包含空字符’\0’。char a2[] = “C++”; //自动添加 ‘\0’字符串结束的空字符 a1=a2。char a3[4] = “C++”;//错误,没有空间存放空字符’...原创 2019-02-26 10:22:10 · 5742 阅读 · 0 评论 -
for或while循环语句中break-continue-return的区别
(1)break;for或while循环break是用于永久终止循环。即不执行本次循环中break后面的语句,直接跳出当前循环。(2)continue;for或while循环continue是用于终止本次循环。即本次循环中continue后面的代码不执行,进行下一次当前循环的入口判断。(3)return;return 0;//跳出整个函数(包括循环)#include<stdio....原创 2019-03-25 10:47:29 · 869 阅读 · 0 评论 -
C++ cin输入多个数据
test1:输入多个数据#include <iostream>#include <vector>using namespace std;int main(){ int num; while (cin >> num) { vector<int> ivec; for (int i = 0; i<num; ++i) {...原创 2019-03-21 20:52:31 · 33407 阅读 · 0 评论 -
new a与new a()有什么区别
自己的总结:都会执行默认构造函数,带()会值的初始化(1)定义一个类:class Test{public: int data;};测试: Test* x = new Test();//都会执行默认构造函数,会进行值的初始化 Test* y = new Test;//不会进行值的初始化 cout << x->data << endl; ...原创 2019-03-30 11:25:07 · 2991 阅读 · 1 评论 -
C++ 对map的value进行排序
#include <map> #include <string> #include <iostream>#include <vector>#include <algorithm>using namespace std;bool cmp(const pair<int, int>& a, const p...原创 2019-09-05 21:24:59 · 1372 阅读 · 0 评论