DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

随笔分类 -  C++/C

上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 47 下一页

摘要:填充白背景:COLORREF colorref=pPicDC->GetBkColor();CBrush* pBrush=(CBrush*)pPicDC->CreateObject();pBrush->CreateSolidBrush(colorref);pPicDC->FillRect(rect,p 阅读全文
posted @ 2020-03-09 09:13 DoubleLi 阅读(480) 评论(0) 推荐(0)

摘要:对一个void*类型指针进行delete操作会出错,除非指针所指的内容是简单类型内容,因为这个操作只会释放内存,而不会执行析构函数 下面是一个代码示例: //:BadVoidPointerDeletion.cpp#include <iostream>using namespace std; clas 阅读全文
posted @ 2020-01-16 16:12 DoubleLi 阅读(547) 评论(0) 推荐(0)

摘要:先来看一段代码 #include <iostream>using namespace std; class A{public: A(){ cout << "A() ...." << endl; } ~A() { cout << "~A()...." << endl; } void func() { 阅读全文
posted @ 2020-01-16 16:10 DoubleLi 阅读(1036) 评论(0) 推荐(0)

摘要:指针操作是C++开发中必备技能。尽管C++11开始引入了智能指针以缓解普通指针的滥用,但是某些场合必须使用普通指针。释放指针在C/C++编程中非常重要,一般推荐释放指针后立即将指针设置为null,防止出现低级的野指针问题(只能避免低级别的野指针)同时方便调试。 一、C语言时代在C语言编程中,我们由于 阅读全文
posted @ 2020-01-16 16:09 DoubleLi 阅读(3714) 评论(0) 推荐(0)

摘要:如果我们new出来的指针是一个基本类型,没什么关系,内存还是会被释放的,但是如果是一个类对象指针,在处理过程中转成了void*,那就有问题了,析构函数将不会被调用。故new的指针类型要和delete的指针类型要保持一致。 如下所示: object* p=new object[10]; void* p 阅读全文
posted @ 2020-01-16 16:08 DoubleLi 阅读(552) 评论(0) 推荐(0)

摘要:一个类对象,当生命周期结束时,该对象会调用自身的析构函数。 一个类的指针,当使用delete函数来删除该指针时,会调用该指针当前类型的析构函数。 比如: classB* pClass = (classB*)new classA;delete pClass; 尽管该指针实际上是classA*类型,但将 阅读全文
posted @ 2020-01-16 16:07 DoubleLi 阅读(1759) 评论(0) 推荐(0)

摘要:1 前言 我在本文中具体介绍了測试工具NuMega Devpartner(下面简称NuMega)的用法。 NuMega是一个动态測试工具,主要应用于白盒測试。该工具的特点是学习简单、使用方便、功能有效。NuMega共同拥有三个独立的子功能——BoundsChecker、TrueCoverage、Tr 阅读全文
posted @ 2020-01-08 14:31 DoubleLi 阅读(1676) 评论(0) 推荐(0)

摘要:两种方法在Visual Studio Win32控制平台程序中使用超过4G的内存(以Visual Sutdio 2013为例) 如果你的程序运行中由于申请大空间而抛出了bad alloc异常,那这篇文章提出的两个方法将对你有些帮助。 捕获异常的方法很简单: try { your code...} c 阅读全文
posted @ 2020-01-08 09:17 DoubleLi 阅读(1729) 评论(0) 推荐(0)

摘要:1.X86程序与X64程序的区别X86程序的内存使用限制 在Windows32位操作系统中,每个进程所能使用的最大空间(包含操作系统使用的内核模式地址空间)为4G,在通常情况下,操作系统会分配2GB内存给进程使用,另外2G内存,另外2G内存为操作系统保留。何谓大内存 所谓“大内存”,就是指允许X86 阅读全文
posted @ 2020-01-07 18:22 DoubleLi 阅读(2009) 评论(0) 推荐(0)

摘要:WNDPROC g_pOldProc = NULL;LRESULT CALLBACK NewWndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){ switch (message) { case WM_ACTIVATE: pri 阅读全文
posted @ 2019-08-28 18:10 DoubleLi 阅读(2691) 评论(0) 推荐(0)

摘要:pthread_cond_wait总和一个互斥锁结合使用。在调用pthread_cond_wait前要先获取锁。pthread_cond_wait函数执行时先自动释放指定的锁,然后等待条件变量的变化。在函数调用返回之前,自动将指定的互斥量重新锁住。 int pthread_cond_signal(p 阅读全文
posted @ 2019-08-28 14:23 DoubleLi 阅读(4865) 评论(0) 推荐(3)

摘要:// Interface of Waiter, also takes care of mutex_ & cond_ init and destroy.class Waiter : boost::noncopyable{ public: virtual void wait() = 0; virtual 阅读全文
posted @ 2019-08-28 14:07 DoubleLi 阅读(471) 评论(0) 推荐(0)

摘要:有时候,我们需要确保一个应用程序长期稳定地运行,但是在Windows平台上由于种种原因,几乎不可能保障一个应用的绝对可靠运行。那么,我们就需要有一个机制,在应用死机﹑异常﹑系统重启等情况下自我恢复,而且能够做一些指定的动作,比如定时重启等。 方案一:把应用注册成服务,并把它放到启动项里。这个方法简单 阅读全文
posted @ 2019-08-15 11:40 DoubleLi 阅读(5697) 评论(0) 推荐(0)

摘要:STARTUPINFO StartupInfo;//创建进程所需的信息结构变量 PROCESS_INFORMATION ProcessInfo; GetStartupInfo(&StartupInfo); StartupInfo.lpReserved=NULL; StartupInfo.lpDesk 阅读全文
posted @ 2019-06-05 14:20 DoubleLi 阅读(1145) 评论(0) 推荐(0)

摘要:C++的项目,字符编码是一个大坑,不同平台之间的编码往往不一样,如果不同编码格式用一套字符读取格式读取就会出现乱码。因此,一般都是转化成UTF-8这种平台通用,且支持性很好的编码格式。 Unicode、UTF-8的概念不做过多解释,这里说一下ANSI,我第一次看到这个名词,我看成了ASCII。被Me 阅读全文
posted @ 2019-03-06 14:02 DoubleLi 阅读(9477) 评论(0) 推荐(0)

摘要:本文所讨论的“内存”主要指(静态)数据区、堆区和栈区空间(详细的布局和描述参考《Linux虚拟地址空间布局》一文)。数据区内存在程序编译时分配,该内存的生存期为程序的整个运行期间,如全局变量和static关键字所声明的静态变量。函数执行时在栈上开辟局部自动变量的储存空间,执行结束时自动释放栈区内存。 阅读全文
posted @ 2019-03-02 15:54 DoubleLi 阅读(2891) 评论(1) 推荐(0)

摘要:1)‘_wcsicmp’在此作用域中尚未声明#ifdef WIN32#define _tcsicmp _wcsicmp#else#define _tcsicmp wcscasecmp#endif2)_stricmp 在此作用域中尚未声明#include <string.h>将_stricmp改成st 阅读全文
posted @ 2019-01-16 09:44 DoubleLi 阅读(729) 评论(0) 推荐(0)

摘要:转载地址:http://www.10tiao.com/html/473/201606/2651473094/1.html 程序的CPU问题是另外一类典型的程序性能问题,很多开发人员都受到过程序CPU占用过高的困扰。本次我们收集了14个CPU类的问题,和大家一起分析下这些问题的种类和原因。另外,对于C 阅读全文
posted @ 2019-01-11 09:13 DoubleLi 阅读(1033) 评论(1) 推荐(0)

摘要:__stdcall被这个关键字修饰的函数,其参数都是从右向左通过堆栈传递的(__fastcall 的前面部分由ecx,edx传), 函数调用在返回前要由被调用者清理堆栈。这个关键字主要见于Microsoft Visual C、C++。GNU的C、C++是另外一种修饰方式:__attribute__( 阅读全文
posted @ 2019-01-10 20:23 DoubleLi 阅读(845) 评论(0) 推荐(0)

摘要:本文介绍三种“实现单实例应用程序”的方法,保障每次只能运行一个该类型的应用程序。 一、共享内存 在main函数中添加如下代码: // 使用共享内存的方式来保证只运行一个实例 QString strKey = "MyApplication"; QSharedMemory sharedMemory; s 阅读全文
posted @ 2019-01-10 10:55 DoubleLi 阅读(757) 评论(0) 推荐(0)

上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 47 下一页