- 博客(33)
- 资源 (5)
- 收藏
- 关注
原创 MFC 多文档打开多个窗口错误解决方案(缩小以后会出现窗口叠加,放大以后工具条错乱等现象)
解决方法是在从CChildFrame类中重写ActivateFrame方法;
2014-07-29 13:29:54
1088
转载 MFC 创建单文档生成的相应文件
1.解决方案相关文件 解决方案相关文件包括解决方案文件夹下的.sdf文件、.sln文件、.suo文件和ipch文件夹。 .sdf文件和ipch目录一般占用空间比较大,几十兆甚至上百兆,与智能提示、错误提示、代码恢复和团队本地仓库等相关。如果你觉得不需要则可以设置不生成它们,方法是点击菜单栏Tools->Options,弹出Options对话框,选择左侧面板中Text
2014-03-25 14:38:09
1507
转载 INI 文件的处理
INI文件编程,WINAPI函数WritePrivateProfileString,GetPrivateProfileString 收藏 在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下: 一.将信息写入.INI文件中. 1.所用的WINAPI函数原型为:BOOL Write
2014-02-27 16:13:19
1698
原创 BitBlt StretchBlt TransparentBlt
BitBlt(适合原图的拷贝) StretchBlt(适合拉伸的拷贝) 与 SetStretchBltMode , SetBrushOrgEX 配合使用TransparentBlt(透明的处理)CDC::BitBltBOOL BitBlt( int x, int y, int nWidth, int nHeight, CDC* pSrcDC, i
2014-02-27 16:11:42
853
原创 友元函数和友元类
友元函数和友元类 采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。但是,有时需要定义一些函数,这些函数不是类的一部分,但又需要频繁地访问类的数据成员,这时可以将这些函数定义为该函数的友元函数。除了友元函数外,还有友元类,两者统称为友元。友元的作用是提高了程序的运行效率(即减少了类型检查和安全性检
2014-02-26 17:54:43
533
转载 拷贝构造函数(深拷贝与浅拷贝)
对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a=88;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。#include iostream>using namespace std;class CExample {private: int a;publ
2014-02-26 13:56:39
516
原创 默认构造函数,隐式类型转换,复制构造函数
对于默认构造函数,大家的第一印象好像总是认为这样的,例如有一个类Aclass A{public: A():a(0),b(2.09) {}private: int a ; double b; string str;};好像总以为默认构造函数都是形参表中没有形参的那种。但事实上还有一种默认构造函
2014-02-26 09:31:47
818
转载 能让你成为更优秀程序员的10个C语言资源
一些人觉得编程无聊,一些人觉得它很好玩。但每个程序员都必须紧跟编程语言的潮流。大多数程序员都是从C开始学习编程的,因为C是用来写操作系统、应用程序最常用的语言。C编程笔记这些是华盛顿实验学院C编程入门课的部分笔记。它们是以《C程序设计语言》的补充笔记(从1995年春开始)为基础修改的,而这本书的作者就是大名鼎鼎的Brian Kernighan和Dennis Ritchie了,人
2014-02-25 09:38:43
965
转载 基类指针指向派生类对象
父类子类指针函数调用注意事项1,如果以一个基础类指针指向一个衍生类对象(派生类对象),那么经由该指针只能访问基础类定义的函数(静态联翩)2,如果以一个衍生类指针指向一个基础类对象,必须先做强制转型动作(explicit cast),这种做法很危险,也不符合生活习惯,在程序设计上也会给程序员带来困扰。(一般不会这么去定义)3,如果基础类和衍生类定义了相同名称的成员函数,那
2014-02-25 09:36:30
11442
转载 C++多态
C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家详细介绍其中C++多态性的一些基本知识,以方便大家在学习过程中对此能够有一个充分的掌握。 多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。多态(polymorphisn),字面意思多种形状。 C++多态性是通过虚函数来实现的,虚函数允许子类重新定
2014-02-25 09:35:08
455
转载 类对象和类指针的区别
类对象和类指针的区别对于类CTest声明:类对象CTest C1:利用类的构造函数在内存中分配一块内存,调用了构造函数类指针CTest *pC1:是一个内存地址值,指向内存中存放的类对象,没有调用构造函数引用成员:对象用"."指针用"->"对象生命期:若是成员变量,则是类的析构函数来释放空
2014-02-21 09:12:22
739
转载 const 只能放在类成员函数的后面
const用在成员函数后 主要是针对类的const 对象 class Text{ public: void printconst(void) const {cout<<"hello"<<endl;} void print(void)
2014-02-20 09:13:48
970
原创 GetExitCodeThread的返回值与线程的退出无关
BOOL GetExitCodeThread ( HANDLE hThread, // in,想获取退出代码的一个线程的句柄 LPDWORD lpExitCode //out,用于装载线程退出代码的一个长整数变量。如线程尚未中断,则设为常数STILL_ACTIVE
2014-02-19 14:19:03
3376
原创 DEClARE_DYNCREATE与IMPLEMENT_DYNCREATE
DEClARE_DYNCREATE 与 IMPLEMENT_DYNAMIC 是为了确定运行时对象属于哪一个类而定义的宏。 添加 DEClARE_DYNCREATE(class_name) 到类的.h文件当中; 添加IMPLEMENT_DYNAMIC(class_name , base_class_name)到类的.cpp当中; 通过使用 RUNTIME_CLASS 和
2014-02-19 11:27:00
796
转载 文件的15种属性 以及 判断文件是否存在GetfileAttributes
在MSDN中,文件总共有15种属性,根据磁盘的分区格式不同,文件的属性也会不同。现在针对 GetFileAttributes 函数的返回值做以下整理返回字段返回值属性类型FILE_ATTRIBUTE_READONLY1只读FILE_ATTRIBUTE_HIDDEN2隐藏FILE_ATTRIBUTE_SYSTEM4系统FILE_ATTRIB
2014-02-18 14:16:03
4182
转载 PDU发送短信 事例
本文以一个实例来解说AT指令发送PDU短信的全过程,假如我要发送下面的短信: 接收号码:+8613602433649 短信内容:工作愉快! 短信中心号码:+8613800200500 一、短信中心号码处理:用字符串 addr 表示 1、将短信息中心号码去掉+号,看看长度是否为偶数,如果不是,最后添加F 即 addr = "+8613800200500"
2014-02-14 17:25:10
1052
转载 AT指令 发送手机短信
一、英文短信发:AT收:OK发:AT+CMGF=1 收:OK发:AT+CMGS=13902433649收:>发:data→ //test 为发送内容,→为发送符(ctrl+z,十六进制0x1A)收:+CMGS: 54 OK二、中文PDU短信本文以一个实例来解说AT指令发送PDU短信的全过程,假如我要发送下面的短信:接收号码:+8613902
2014-02-14 10:52:11
1137
转载 vs2008 NONCLIENTMETRICS 错误
vs2008 NONCLIENTMETRICS 错误 在调一个CGridCtrl类的时候,在vc6.0下可以正常编译,在vs2008以上编译器下却出现bug。查找之后改了bug,做个记号转载如下:NONCLIENTMETRICS ncms = {0} ;ncms.cbSize = sizeof(NONCLIENTMETRICS);int s = s
2014-02-12 10:10:00
794
转载 C语言程序员必读的5本书
你正计划着通过看书来学习C语言吗?“书籍是人类最忠诚的朋友“。海明威一定知道书籍对一个人一生的重要性。书籍是知识的丰富来源。你可以从书中学到各种知识。书籍可以毫无歧视地向读者传达作者的本意。C语言是由 Dennis Ritchie在1969年到1973年在贝尔实验室研发的。C语言可以把程序简单地编译为机器指令,使得它成为了最高效的语言。为什么在程序员中,C语言如此流行呢?这背后有很多原因。首先
2014-01-10 18:15:48
707
转载 给JavaScript初学者的24条最佳实践
这个列表收集了 C++ 语言的一些晦涩(Obscure)特性,是我经年累月研究这门语言的各个方面收集起来的。C++非常庞大,我总是能学到一些新知识。即使你对C++已了如指掌,也希望你能从列表中学到一些东西。下面列举的特性,根据晦涩程度由浅入深进行排序。1. 方括号的真正含义 2. 最烦人的解析 3.替代运算标记符 4. 重定义关键字 5. Placement new 6.在声明变量的同时进
2014-01-10 18:14:31
545
转载 十步完全理解SQL
很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。我们每天都在写 SQL 并且应用在开源软件 jOOQ 中。于是我想把 SQL 之美介绍给那些仍然对它头疼不已的朋友,所以本文是为了以下读者而特地编写的:1、 在工作中会用到 SQL 但是对它
2014-01-10 15:14:18
382
转载 8小时学会HTML
http://study.163.com/course/introduction/432008.htm#/courseDetail
2013-12-27 17:31:41
795
原创 西红柿助手拷贝路径
Win7系统:C:\Users\用户名\AppData\Local\Microsoft\VisualStudio\10.0\Extensions\Whole Tomato Software\Visual Assist X\10.7.1916.0XP系统:C:\Documents and Settings\用户名\Local Settings\Application Data\Micro
2013-12-25 14:34:37
911
原创 CreateMutex创建互斥体
进程的互斥运行 正常情况下,一个进程的运行一般是不会影响到其他正在运行的进程的。但是对于某些有特殊要求的如以独占方式使用串行口等硬件设备的程序就要求在其进程运行期间不允许其他试图使用此端口设备的程序运行的,而且此类程序通常也不允许运行同一个程序的多个实例。这就引出了进程互斥的问题。 实现进程互斥的核心思想比较简单:进程在启动时首先检查当前系统是否已经存在有此进程的实例,如果没有
2013-12-25 13:41:14
4891
原创 10 个 Visual Studio 原生开发的调试技巧(很棒)
有兴趣的话可以仔细阅读,很有帮助的1. Break on Exception 2. Pseudo-variables in Watch Windows 3. Watch Heap Objects After Symbol Goes out of Scope 4. Watch a Range of Values Inside an Array 5.
2013-12-25 13:12:08
600
原创 C/C++变量名命名规范
安全:增加代码的正确性和稳定性,减少各种易犯的错误和隐患易读:保证代码的易读性和可维护性美观:统一开发人员的编程风格简洁:易于调试、提高问题定位的命中率规则: Scope: 作用域 BaseTag: 数据类型 Name: 变量名字 例: CString m_csMyName; int m_nAge;Scope-作用域
2013-12-25 13:08:45
884
转载 加载PNG透明图片
1.GDI+画透明图层(alpha)的png图片stdafx加入如下:#include //初始化一下com口#include "GdiPlus.h"using namespace Gdiplus;#pragma comment(lib,"gdiplus.lib")开始初始化:在app类的声明里(.h)加入:ULO
2013-12-25 13:06:26
909
转载 拷贝构造函数
一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plaincopyprint?int a = 100; int b = a; [c-sharp] view plaincopyprint?int a = 100; int b = a; in
2013-12-25 13:00:05
420
原创 基类与派生类的构造函数
一 构造函数和析构函数的调用顺序 1 儿子不能继承父亲的构造和析构函数 2 执行顺序 class Base { public: Base() { cout<<"基类的构造函数执行!"<<endl; } ~Base() { cout<<"基类的析构函数执行!"<<endl ;} }; class D
2013-12-25 12:58:02
730
原创 读取txt,csv等文件
//读取失败#define READ_FAIL 0//读取分隔符#define READ_SEPARATOR 1//读到行尾#define READ_LINEEND 2//是否是Unicode文件BOOL WINAPI IsUnicodeFile(CFile &File);//文件读取int WINAPI ReadTxtFile(CFile &File,
2013-12-25 12:52:59
681
转载 GetLastError()函数
GetLastError()函数的介绍作用就是取得上一个函数操作时所产生的错误代码(可以通过VC++自带的Error Lookup工具来查找其所表示的含义)。DWORD GetLastError(void);这是一个没有参数的函数,通过调用,就返回一个32位的数值。下面编写了一个很简单的VC++例子来说明此函数#include int WINAPI wWinMain(HINST
2013-12-25 12:50:30
561
转载 win32 获取窗口句柄的方法
win32 获取窗口句柄的方法 第一种方法是根据窗口句柄值获取窗口句柄使用spy++获取指定窗口的窗口句柄值,因为句柄值是16进制数,所以前面加0x,然后进行强制转换为HWND类型。HWND hWnd=(HWND)0x00280726; 第二种方法是使用FindWindow或者FindWindowEx根据窗口类名和窗口标题找到相应的窗口句柄HWND FindWind
2013-12-25 12:37:27
9004
MFC类库详解.chm
2013-12-25
Win32Api.chm
2013-12-25
强大的资源提取工具——AbstractChinese
2013-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人