![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
yebanguhe
这个作者很懒,什么都没留下…
展开
-
C++遍历目录
所谓遍历目录,就是给定一个目录,访问其中的所有文件(包括子目录下的文件)。迭代是比较常用的遍历算法。本文利用的特性,通过一个类CBrowseDir,对目录遍历进行了封装。用户只需掌握该类四个成员的用法,就可以在自己的程序中,很方便地实现目录遍历。 类CBrowseDir使用了迭代算法。因为算法不是本文重点,笔者不打算展开进一步讨论,对其感兴趣者可参考相关资料。一、类成员说明:转载 2015-03-19 15:41:27 · 464 阅读 · 0 评论 -
C++错误解决:double free or corruption (out): 0x00000000011abe70 ***
错误信息double free or corruption (out): 0x00000000011abe70 ***问题分析基本上根据题目判定,类型没得跑,内存问题。所以会有几种情况:1. 内存重复释放,看程序中是否释放了两次空间(一般不会是这种情况,毕竟。。太明显)2. 内存越界。(大部分是这种情况,如果你使用了数组,或者开辟了空间,但是在循环的时候越界了,就...转载 2019-04-02 09:13:39 · 9049 阅读 · 0 评论 -
double free or corruption 错误解决办法
在编写clutter和glib程序时,可能会出现此错误错误的原因可能是像错误的字面原因所示的一样,也可能是因为其它原因.但是最主要的因为以下两个函数的使用:clutter_actor_destroy的调用和g_free这两个函数都是销毁一个指针所指向的对象,但是,不止这一个共同点它们在释放掉指针所指的对象后,都不会将指针赋NULL值.如果在不小心再次调用clutter...转载 2019-04-02 09:11:49 · 1376 阅读 · 0 评论 -
hpp头文件与h头文件的区别
hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减少调用 project中的cpp文件数与编译次数,也不用再发布烦人的lib与dll,因此非常适合用来编写公用的开源库。 ...转载 2019-03-19 09:16:31 · 137 阅读 · 0 评论 -
std::vector使用总结
Vector Vector描述的是一个动态数组(dynamic array),并提供了相关操作和接口。 在使用Vector之前,需要引入头文件#include<vector>,在此头文件中,类型vector是一个定义于namespace std内的template:template< class T, class Allocator = std::...转载 2019-03-19 15:24:59 · 6608 阅读 · 0 评论 -
c/c++标准预定义宏 .
C标准中的一些预定义宏昨天写代码时需要在代码获取当前编译时间,从而可动态地作为版本信息,因此用到了C标准中的一些预定义的宏。在此将C标准中定义的几个宏一并总结一下:__DATE__ 进行预处理的日期(“Mmm dd yyyy”形式的字符串文字,如May 27 2006) __FILE__ 代表当前源代码文件名的字符串文字 ,包含了详细路径,如G:/program/study/c+/转载 2016-04-09 14:41:07 · 401 阅读 · 0 评论 -
如何在 C++ 程序中计算时间 .
1.如果在基于 Windows Win32 的程序(纯C++无法使用),即可以使用 GetTickCount() 函数实现。 精确到毫秒(ms)级。[cpp] view plaincopyprint?DWORD dwStart = GetTickCount(); // 程序....... DWORD dwEnd = GetTickCount(); D转载 2015-05-05 15:43:28 · 786 阅读 · 0 评论 -
getenv、setenv函数 获取和设置系统环境变量
getenv(取得环境变量内容) 相关函数 putenv,setenv,unsetenv 表头文件 #include 定义函数 char * getenv(const char *name); 函数说明 getenv()用来取得参数name环境变量的内容。参数name为环境变量的名称,如果该变量存在则会返回指向该内容的指针。环境变量的格式为name=value。 返回转载 2015-04-30 15:59:13 · 933 阅读 · 0 评论 -
基于消息的方式 访问控件
Windows程序都是基于消息的一个程序系统,我们要获取一个窗体的文本可以通过发送一个消息获取,只要知道窗体发送的消息是一个什么样的消息,就可以通过SendMessage获取这个消息。WM_GETTEXT:SendMessage(HWND hWnd;WM_GETTEXT:wParam = (WPARAM) cchTextMax;lParam = (LPARAM) lpszT转载 2015-04-14 15:20:28 · 410 阅读 · 0 评论 -
文本框 Text
文本框大部分时间里是用来起标记作用的,一般ID号都是一样的。我们如果想要它响应点击消息,我们修改一下它的ID。 获取窗体的文本int GetWindowText( LPTSTRlpszStringBuf, int nMaxCount ) const;void GetWindowText( CString& rString ) const;上边的第一个函数,第一个参数是一个字符串转载 2015-04-14 11:39:36 · 424 阅读 · 0 评论 -
extern
extern这个关键字真的比较可恶,在声明的时候,这个extern居然可以被省略,所以会让你搞不清楚到底是声明还是定义,下面分变量和函数两类来说:(1)变量尤其是对于变量来说。extern int a;//声明一个全局变量aint a; //定义一个全局变量aextern int a =0 ;//定义一个全局变量a 并给初值。int a =0;//定义一个全局变量a转载 2015-04-22 16:29:46 · 289 阅读 · 0 评论 -
delete和delete[]的区别
由new分配的一个数组空间,比如说 int *array=new int[50],当用delete释放这个空间时,用语句delete []array和delete array是否等价!C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。 关于 new[] 和 delete[],其中又原创 2015-03-11 17:40:31 · 366 阅读 · 0 评论 -
内联函数
一、什么叫inline函数? inline(小心,不是online),翻译成“内联”或“内嵌”。意指:当编译器发现某段代码在调用一个内联函数时,它不是去调用该函数,而是将该函数的代码,整段插入到当前位置。这样做的好处是省去了调用的过程,加快程序运行速度。(函数的调用过程,由于有前面所说的参数入栈等操作,所以总要多占用一些时间)。这样做的不好处:由于每当代码调用到内联函数,就需要在调用处直接插入转载 2015-03-27 17:08:15 · 430 阅读 · 0 评论 -
C++类中this指针的理解
先要理解class的意思。class应该理解为一种类型,象int,char一样,是用户自定义的类型。用这个类型可以来声明一个变量,比如int x, myclass my等等。这样就像变量x具有int类型一样,变量my具有myclass类型。理解了这个,就好解释this了,my里的this 就是指向my的指针。如果还有一个变量myclass mz,mz的this就是指向mz的指针。 这样就很容易理解...转载 2019-04-29 09:10:24 · 156 阅读 · 0 评论