![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++学习 坑点笔记
qingsui2022
四川大学软件工程大三在读,目前在阿里云实习,研究方向为数据库相关
展开
-
version `CXXABI_1.3.9‘ not found 解决
version `CXXABI_1.3.9' not found原创 2022-06-15 11:43:51 · 2999 阅读 · 0 评论 -
安装cmake 3.6
cmake原创 2022-06-13 18:57:36 · 645 阅读 · 0 评论 -
centos 安装 g++7
centos g++ 7原创 2022-06-13 18:56:28 · 497 阅读 · 0 评论 -
vector push_back后迭代器失效
vector<vector<int> > vec = { { 2,0 }, { 1,1 } }; auto iter = vec.begin(); cout << (*iter)[0]; //正常 vec.push_back({ 1,1 }); cout << (*iter)[0]; //报错其原因是push_back导致vector需要扩容,新分配一片内存再将原本的数据拷贝进去,而iter仍指向原本的内存空间,导致了迭代器失效。所以在使用迭代.原创 2022-02-14 16:29:25 · 1509 阅读 · 0 评论 -
c++踩坑:调试类成员函数、参数时变量正常、进入函数体后变量混乱
今天写代码踩个大坑,比如这么行代码:lept_value testv = test.lept_parse_number(test.json, test.index);右边的函数返回类型是lept_value&,调式的时候调到该语句,显示返回值内变量正常,进一步调试,跳入lept_value的拷贝构造函数中,在参数行成员变量仍正确,而进入函数体真正开始执行语句时,所有成员变量全乱了。百思不得其解,问了v神,才发现犯了个弱智错误:lept_parse_number这个函数中返回了一个临时变量的引原创 2021-10-22 19:55:47 · 282 阅读 · 0 评论 -
踩坑:C++ union中使用string
近日写json解析器的时候遇到一个问题,要将一个string类型放入union中,出现多种报错,查到这样一篇技术文章:关于在联合体中用string之后打算尝试两种解决方法:将union中的string类型用char*替代(配合一个size_t一起使用)用上文中的replace new的方式进行尝试尝试后再更…...原创 2021-10-21 16:21:20 · 1825 阅读 · 0 评论 -
Effective C++ 总结
原创 2021-08-31 18:18:57 · 124 阅读 · 0 评论 -
C++ function中存类的成员函数的坑点
问题代码:#include<functional>class A {public: int data; void fun1(int i) { data += i; } void fun2() { std::function<void(int)> temp = fun1; }};报错内容:不存在从"void(int i)" 转换到 “std::function<void(int)>” 的适当构造函数。这个报错很令人迷惑,这不俩类型一样?原创 2020-12-17 10:36:04 · 2419 阅读 · 2 评论