C++
sc_valentine21
足球 篮球
展开
-
C++中的内存对齐
内存对齐 在我们的程序中,数据结构还有变量等等都需要占有内存,在很多系统中,它都要求内存分配的时候要对齐,这样做的好处就是可以提高访问内存的速度。 我们还是先来看一段简单的程序: 程序一 1 #include iostream> 2 using namespace std; 3 4 struct X1 5 {转载 2008-04-06 13:11:00 · 1507 阅读 · 6 评论 -
编译错误:Failed to save the updated manifest to the file ..........
问题: 编译错误:vs2005>mt.exe : general error c101008a: Failed to save the updated manifest to the file "./Debug/TransSliderControl.exe.embed.manifest" 解决方法:清理解决方案,再重新生成,Ok。原创 2009-08-17 20:30:00 · 11169 阅读 · 4 评论 -
源文件与模块生成时的文件不同
调试时,断点断不到,F11单步提示源文件与模块生成时的文件不同,解决办法:工具 -> 选项 -> 调试 -> 常规去掉“要求源文件和版本匹配”前面的勾勾就可以了。 这种方法指标不治本。如果出现警告:Warning C4819:The file contains a character that can ot be represented in the current code原创 2009-09-08 11:13:00 · 2972 阅读 · 1 评论 -
VC6 和 VS2003 转换到VS2005 时可能会遇到的问题以及解决方法
VC6 和 VS2003 转换到VS2005转载 2010-11-29 18:43:00 · 2987 阅读 · 0 评论 -
MFC窗口程序显示命令行输出窗口的方法
MFC窗口程序显示命令行输出窗口的方法原创 2010-12-01 15:10:00 · 8013 阅读 · 0 评论 -
C++写文件拷贝
C++ 文件拷贝 CopyFile原创 2010-11-26 17:25:00 · 843 阅读 · 0 评论 -
关掉vs2003 Disassembly 窗口
<br />我们经常会在调试时,出现Disassembly 窗口,出现这种情况,通常是找不到代码,所以。。。<br /> <br /> <br />但是这个窗口会很烦,怎么都关不掉,要怎么办呢?<br /> <br />Tools --> Options --> Debugging --> General<br /> <br />勾掉Show disassembly if source is not available<br /> <br />关闭vs,再打开。原创 2011-02-24 15:46:00 · 2627 阅读 · 0 评论 -
RichEdit背景色的修改
RichEdit 背景色 Transparent原创 2011-03-08 17:09:00 · 5803 阅读 · 0 评论 -
VC托盘气泡显示不出来
VC 托盘 气泡原创 2011-03-21 19:46:00 · 1477 阅读 · 1 评论 -
VS2005 调试 “没有找到 MSVCR80.dll” 的解决办法
MSVCR80.dll原创 2011-03-25 10:24:00 · 1693 阅读 · 0 评论 -
VC资源中加载GIF
加载资源的方式就不多说了,简单的几步,新建资源类型,然后再导入就完成了。网上也一堆。这里只说遇到的问题。 对于静态gif,导入一切正常。 但是对于动态的gif,同样的方式,导入的时候就不行了(我用的是vs2005),总是提示“不是有效的gif图片”。 进行不下去了,怎么办。 这时,可以这么做: 将这个gif改后缀名,随便改,然后导入进去,这样就能成功导入。原创 2011-06-16 15:43:00 · 2120 阅读 · 0 评论 -
VC编写vista或win7下需要管理员权限运行的程序
程序有com,需要注册,但是在win7上面如果不是管理员权限的话,执行就会失败。先是通过代码提升用户权限的。代码如下:BOOL UpgradeProcessPrivilege(HANDLE hProcess, LPCTSTR lpPrivilegeName ){ HANDL原创 2011-07-11 11:29:33 · 3969 阅读 · 0 评论 -
VC++动态链接库(DLL)编程深入浅出(一)
问:本文主要讲解什么内容? 答:本文详细介绍了DLL编程的方方面面,努力学完本文应可以对DLL有较全面的掌握,并能编写大多数DLL程序。 问:如何看本文? 答:本文每一个主题的讲解都附带了源代码例程,可以随文下载(每个工程都经WINRAR压缩)。所有这些例程都由笔者编写并在VC++6.0中调试通过。 当然看懂本文不是读者的最终目的,读者应亲自动手实践才能真正掌握DLL的奥妙。 问:学转载 2009-08-04 12:30:00 · 700 阅读 · 0 评论 -
VC++动态链接库(DLL)编程深入浅出(三)
第4节我们对非MFC DLL进行了介绍,这一节将详细地讲述MFC规则DLL的创建与使用技巧。 另外,自从本文开始连载后,收到了一些读者的e-mail。有的读者提出了一些问题,笔者将在本文的最后一次连载中选取其中的典型问题进行解答。由于时间的关系,对于读者朋友的来信,笔者暂时不能一一回复,还望海涵!由于笔者的水平有限,文中难免有错误和纰漏,也热诚欢迎读者朋友不吝指正! 5. MFC规则DLL转载 2009-08-04 12:41:00 · 673 阅读 · 0 评论 -
VC++动态链接库(DLL)编程深入浅出(二)
上节给大家介绍了静态链接库与库的调试与查看(动态链接库(DLL)编程深入浅出(一)),本节主要介绍非MFC DLL。4.非MFC DLL4.1一个简单的DLL 第2节给出了以静态链接库方式提供add函数接口的方法,接下来我们来看看怎样用动态链接库实现一个同样功能的add函数。 如图6,在VC++中new一个Win32 Dynamic-Link Library工程dllTest(单击此处下载转载 2009-08-04 12:34:00 · 1007 阅读 · 2 评论 -
C++中的虚函数
虽然很难找到一本不讨论多态性的C++书籍或杂志,但是,大多数这类讨论使多态性和C++虚函数的使用看起来很难。我打算在这篇文章中通过从几个方面和结合一些例子使读者理解在C++中的虚函数实现技术。说明一点,写这篇文章只是想和大家交流学习经验因为本人学识浅薄,难免有一些错误和不足,希望大家批评和指正,在此深表感谢! 一、 基本概念 首先,C++通过虚函数实现多态."无论发送消息的对象属于什么类,转载 2008-09-04 17:09:00 · 592 阅读 · 0 评论 -
多线程编程一---CreateThread透析
多线程概述 进程和线程都是操作系统的概念。进程是应用程序的执行实例,每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,进程在运行过程中创建的资源随着进程的终止而被销毁,所使用的系统资源在进程终止时被释放或关闭。 线程是进程内部的一个执行单元。系统创建好进程后,实际上就启动执行了该进程的主执行线程,主执行线程以函数地址形式,比如说main或WinMain函数,将程序的启动转载 2008-11-18 14:54:00 · 4364 阅读 · 0 评论 -
深入浅出Win32多线程程序设计(二)
深入浅出Win32多线程程序设计之线程控制WIN32线程控制主要实现线程的创建、终止、挂起和恢复等操作,这些操作都依赖于WIN32提供的一组API和具体编译器的C运行时库函数。 1.线程函数 在启动一个线程之前,必须为线程编写一个全局的线程函数,这个线程函数接受一个32位的LPVOID作为参数,返回一个UINT,线程函数的结构为:UINT ThreadFunction转载 2008-11-18 16:27:00 · 673 阅读 · 0 评论 -
深入浅出Win32多线程程序设计(三)
深入浅出Win32多线程程序设计之线程通信简介 线程之间通信的两个基本问题是互斥和同步。 线程同步是指线程之间所具有的一种制约关系,一个线程的执行依赖另一个线程的消息,当它没有得到另一个线程的消息时应等待,直到消息到达时才被唤醒。 线程互斥是指对于共享的操作系统资源(指的是广义的"资源",而不是Windows的.res文件,譬如全局变量就是一种共享资源),在各线程访问时的排它性。当转载 2008-11-18 16:30:00 · 772 阅读 · 0 评论 -
Windows 的多线程程序设计初步
Windows 的多线程程序设计初步一般情况下多线程编程多采用MFC类库实现,那么如果不使用MFC 如何进行多线程程序设计呢?本文将就这个问题进行讨论: 微软在Windows API中提供了建立新的线程的函数CreateThread,它的语法如下:hThread = CreateThread (&security_attributes, dwStackSize, Thr转载 2008-11-18 16:39:00 · 931 阅读 · 0 评论 -
Visual C++线程同步技术剖析
Visual C++线程同步技术剖析 (转载) 作者:中国电波传播研究所 郎锐■来自:yesky摘要: 多线程同步技术是计算机软件开发的重要技术,本文对多线程的各种同步技术的原理和实现进行了初步探讨。关键词: VC++6.0; 线程同步;临界区;事件;互斥;信号量; 正文 使线程同步 在程序中使用多线程时,一般很少有多个线程能在其生命期内进行完全独立的操作。更多的情况是一些转载 2008-11-18 14:56:00 · 522 阅读 · 0 评论 -
深入浅出Win32多线程程序设计(一)
从单进程单线程到多进程多线程是操作系统发展的一种必然趋势,当年的DOS系统属于单任务操作系统,最优秀的程序员也只能通过驻留内存的方式实现所谓的"多任务",而如今的Win32操作系统却可以一边听音乐,一边编程,一边打印文档。 理解多线程及其同步、互斥等通信方式是理解现代操作系统的关键一环,当我们精通了Win32多线程程序设计后,理解和学习其它操作系统的多任务控制也非常容易。因此,学习Win32转载 2008-11-18 16:20:00 · 833 阅读 · 0 评论 -
深入浅出Win32多线程程序设计(四)
深入浅出Win32多线程设计之MFC的多线程1、创建和终止线程 在MFC程序中创建一个线程,宜调用AfxBeginThread函数。该函数因参数不同而具有两种重载版本,分别对应工作者线程和用户接口(UI)线程。 工作者线程CWinThread *AfxBeginThread( AFX_THREADPROC pfnThreadProc, //控制函数 LPVOID pP转载 2008-11-18 16:32:00 · 989 阅读 · 1 评论 -
深入浅出Win32多线程程序设计(五)
深入浅出Win32多线程程序设计之综合实例本章我们将以工业控制和嵌入式系统中运用极为广泛的串口通信为例讲述多线程的典型应用。 而网络通信也是多线程应用最广泛的领域之一,所以本章的最后一节也将对多线程网络通信进行简短的描述。 1.串口通信 在工业控制系统中,工控机(一般都基于PC Windows平台)经常需要与单片机通过串口进行通信。因此,操作和使用PC的串口成为大多数单片机、嵌入转载 2008-11-18 16:35:00 · 910 阅读 · 0 评论 -
C++ 中的Singleton 类的实现
ANSI C++ 中的 Singleton 实现说难不难,说容易也不容易,很多人写 ANSI C++ 的 Singleton class 都有错误。这篇文章讨论怎样在 ANSI c++ 中写 Singleton class, 希望对大家有帮助。 《设计模式》中把 Singleton 写成返回指针:class Singleton{public: static S转载 2008-12-15 10:27:00 · 667 阅读 · 0 评论 -
WIN32多线程程序设计学习笔记[转]
《WIN32多线程程序设计》这本书也看了好多遍,但总是觉得印象不深;我想是不是应该做做笔记,一来可以加深一下印象。二也在可以在用时方便查阅。J 首先,我觉得线程一点都不难(这样的心理暗示会使我觉得学的轻松一些); why? 与调用函数的过程类似;线程只不过用CreateThread的API将函数 HANDLE hThread = CreateThread (转载 2009-03-14 11:25:00 · 2258 阅读 · 0 评论 -
regsvr32 注册dll失败
regsvr32 失败 CLSIDFromProgID原创 2011-01-25 10:23:00 · 12481 阅读 · 1 评论