-
yexindonglai@163.com
2024-05-29 15:59
c++
586°
0
first原因解决方案一:使用指针引用方案二:使用二级指针first先看这段代码,有多个地方都会释放pPointer的对象空间,但是为了防止重复释放,在第二次释放时做了判空处理;不为空才释放;#include<iostream>usingnamespacestd;//释放内存voidrelease(int*pPointer){deletepPointer;pPointer=nullptr;}intmain(){int*pPointer=newint();//释放release(pPointer);if(pPointer)deletepPointer;return0;}执行结果如下,报错了,告诉
-
yexindonglai@163.com
2024-04-25 15:18
c++
644°
0
问题描述找呀找问题原因分析解决方案2方案3问题描述今天使用c调用lua,在linux安装了lua开发环境,但是开发的时候却找不到lua.h头文件;在linux运行以下命令,显示LUA5.3.0版本,证明LUA的安装是没问题的;root@PAw9033927:~#lua-vLua5.3.0Copyright(C)1994-2015Lua.org,PUC-Rio但是在CLionidea却显示'lua.h'filenotfound然而,更奇怪的是,点绿色小三角运行的时候却是可以正常运行的;这个情况让我了解到,肯定是idea的问题,代码是没问题的;找呀找问题通过find命令找到lua.h的文件在以下路
-
yexindonglai@163.com
2024-04-17 18:30
c++
543°
0
先上代码编译解决方案一解决方案二先上代码main.cpp#include"func.h"intmain(){returnadd(1,4);}func.h#ifndefUNTITLED_FUNC_H#defineUNTITLED_FUNC_Hintadd(inta,intb);#endif//UNTITLED_FUNC_Hfunc.c#include"func.h"intadd(inta,intb){returna+b;}CMakeLists.txtcmake_minimum_required(VERSION3.23)project(untitled)set(CMAKE_CXX_STANDARD
-
yexindonglai@163.com
2024-03-22 11:25
c++
532°
0
[TOCM]问题解决问题拷贝来一个别人的clion工程,打开出现以下错误:CannotgenerateintoD:\all_projects\cpp_projects\test_queueItisalreadyusedforproject\home\leozhou\Public\test_queuePleaseeitherdeleteitmanuallyorselectanothergenerationdirectory解决在clionidea中依次选择Tools->CMake->ResetCacheAndReloadProject
-
yexindonglai@163.com
2024-01-25 14:50
c++
1064°
0
1、MinGW的定义2、MinGW的主要组件3、MinGW-w64下载与安装3.1、下载解压安装地址3.2、MinGW-w64环境变量的设置4、验证MinGW是否安装成功5、编写一段简单的代码验证下6、总结1、MinGW的定义MinGW(MinimalistGNUforWindows)是一个用于Windows平台的开发工具集,它提供了一组GNU工具和库,可以用于编译和构建本地的Windows应用程序。MinGW的目标是在Windows环境下提供类似于Unix/Linux环境下的开发工具,使开发者能够轻松地在Windows上编写和编译C、C++等程序。2、MinGW的主要组件GCC(GNUCom
-
yexindonglai@163.com
2023-12-23 21:34
c++
813°
0
问题描述编译解决问题描述之前写c语言,习惯了将声明和定义分开存放在不同的文件中,其中,声明放在头文件中,定义放在cpp文件中,这样一来方便后期维护,也算是一种规范,众所周知,c语言里面是没有模版这个概念的;直到最近接触了C++;发现在写模版类的时候,将声明和定义分开了,编译死活过不去;以下是代码BlockQueue.h#ifndefTEST_BLOCKQUEUE_H#defineTEST_BLOCKQUEUE_Htemplate<classE>classBlockQueue{public:voidshow();};#endif//TEST_BLOCKQUEUE_HBlockQueue.cpp#
-
yexindonglai@163.com
2023-12-20 22:46
c++
2178°
0
问题描述解决方案问题描述错误信息如下/usr/bin/ld:CMakeFiles/flow_server.dir/reactor/Reactor_demo.cpp.o:infunction`main':/tmp/cpp_flow_server/reactor/Reactor_demo.cpp:106:multipledefinitionof`main';CMakeFiles/flow_server.dir/main.cpp.o:/tmp/cpp_flow_server/main.cpp:38:firstdefinedherecollect2:error:ldreturned1exitstatu
-
yexindonglai@163.com
2023-12-19 22:00
c++
879°
0
问题描述源码解决方案问题描述今天自己用c++写了一个静态的工具类,用来处理字符串切割用的,发现写好之后,出现一个很奇葩的问题,死活编译不过去,就是一个劲地报错;但我看了代码这样写是没问题的;源码StringUtils.h#ifndefFLOW_SERVER_STRINGUTILS_H#defineFLOW_SERVER_STRINGUTILS_H#include"string"#include"vector"#include<sstream>#include"iostream"usingnamespacestd;/***字符串工具类*/classStringUtils{public:stati
-
yexindonglai@163.com
2023-09-18 22:33
c++
2243°
0
1、什么是反向调试2、reverse指令3、record指令3、实战1、调试代码2、打包3、开启gdb调试4、在第5行打上断点5、运行到断点处6、record开始记录程序的执行轨迹7、next单步执行8、reverse-next回退9、总览1、什么是反向调试反向调试是一种高级调试技术,可以让程序已经执行了一段时间后,回退到过去的状态并重新执行。这意味着你可以回到程序执行中的任何点,查看变量的值、堆栈跟踪以及程序执行路径。反向调试可以让我们快速、准确地定位出程序中的错误或异常的根本原因。简单来说,就是一种可以让程序逻辑逆序执行的调试技术。通过它,你可以随时中断程序的正常执行,然后逆序执行,让程序
-
yexindonglai@163.com
2023-08-27 22:52
c++
2249°
0
问题描述解决1、打开Registry2、勾选clion.remote.tar.dereference3、Resyncwithremotehosts问题描述最近在用远程开发,就是在windows系统上开发linux程序,但是用最新版的clion报错了,在clion找不到Linux中的库文件,所以就没有代码补全,但是编译是正常的。更具体点,找得到iostream但是找不到sys/wait.h、unistd.h;因为iostream是windows支持的,而sys/wait.h、unistd.h是linux系统支持的;如下图鼠标移上去会提示:filenotfound解决1、打开Registry首先双