自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

迎难而上

热爱技术的IT人

  • 博客(26)
  • 收藏
  • 关注

原创 C++模板类与运算符作为友元函数重载

我自定义了一个模板类并重载了运算符,预定义实现功能为能实现对数组一般操作,类似于vector。#ifndef ARRAY_H#define ARRAY_H#include using namespace std;templateclass Array{ friend ostream& operator<<(ostream&, const Array &); friend i

2015-07-31 19:09:49 4418 2

原创 C++的动态内存管理,new/delete

C++动态内存管理:在C++程序中对任何内置或用户自定义的类型控制的内存进行分配与释放。C++动态内存分配使用的符号new / delete (C++内置类型)动态内存分配new的优势,可以在运行时动态分配内存的大小:在C语言中声明一个字符串数组如下:char a[1000];但是如下模式不能通过,原因是char 声明的字符串的大小必须是常量,如下模

2015-07-31 15:35:59 1058

原创 C_动态内存分配,malloc/free

malloc函数原型extern void *malloc(unsigned int num_bytes);头文件#include 功能分配长度为num_bytes字节的内存块返回值如果分配成功则返回指向被分配内存的指针(此存储区中的初始值不确定),否则返回空指针NULL。当内存不再使用时,应使用free()函数将内存块释放。函数

2015-07-31 15:25:49 1270

转载 C/C++_sizeof的本质与使用注意事项

Tag: program转自:http://rabbitlzx.blogbus.com/logs/2006/03/2094407.html1、什么是sizeof    首先看一下sizeof在msdn上的定义:    The sizeof keyword gives the amount of storage, in bytes, associated wi

2015-07-31 14:58:00 1591 1

原创 C++_引用与析构,通过引用减少临时变量

通过引用可以大大减少创建临时变量的次数,从而提高程序运行的效率。本文探讨创建通过引用减少创建临时变量的次数,与临时变量的生命周期。测试一:不使用引用。#include #include using namespace std;class Point{private: static int count; int x;public: Point() { x

2015-07-31 11:32:24 2576 2

原创 C++中异常规格(异常抛出表)和 成员初始化表 的放置先后顺序

测试代码如下#include #include class CPoint{public: CPoint(int x){ printf("has synax\n"); } CPoint(){ printf("no synax\n"); }};class Point : public CPoint{public: Point()throw() :CPoint(

2015-07-30 11:47:23 884

转载 MFC消息映射原理

原引自博客园 http://www.cnblogs.com/lidabo/p/3694726.html多态的实现机制有两种,一是通过查找绝对位置表,二是查找名称表;两者各有优缺点,那么为什么mfc的消息映射采用了第二种方法,而不是c++使用的第一种呢?因为在mfc的gui类库是一个庞大的继承体系,而里面的每个类有很多成员函数(只说消息反映相关的成员函数啊),而且在派生类中,需要改写的也比较

2015-07-30 10:44:24 586

原创 构造死循环

1.通过两个函数相互调用#include class KK{public: void print(){ printf("sssss\n"); print(1); } void print(int x){ printf("kkkkk\n"); print(); }};int main(){ KK k; k.print(); return 0;}

2015-07-29 15:58:35 696

原创 C++_子类与基类的构造函数问题

1.若一个类提供构造函数,则该类就不提供默认的构造函数。2.派生类会默认调用基类的无参构造函数#include #include class CPoint{public: CPoint(int x){ printf("has synax\n"); } CPoint(){ printf("no synax\n"); }};class Point :

2015-07-29 13:55:03 8032 2

原创 C/C++_两种函数不能重载的情况

情况一:  参数完全相同,只有返回值不同示例 :void print();int print();由于只有返回值不同故无法区分到底调用那个函数,因此不能重载情况二: 语意不明确示例:KK(int x , int y = 10){this->x = 10;this->y = y;}KK(int x){this->x = 10;this-

2015-07-28 14:58:57 11199

原创 C/C++__函数指针

学好函数指针有着较为重要的意义,如Windows编程中WNDCLASS结构体的 lpfnWndProc 成员就是一个函数指针,下面介绍简单的函数指针应用。void ToUpper(char *);void ToLower(char *);int round(double);/***声明了一个名为pf的函数指针, 该函数指针可以指向一个函数*该函数特点:返回值

2015-07-28 09:49:27 832

原创 C/C++__带参数的main函数

通过win32控制台的main函数的参数,我们可以对文件等数据进行处理main函数可以不带参数,也可以带参数,这个参数可以认为是 main函数的形式参数。C语言规定main函数的参数只能有两个,习惯上这两个参数写为argc和argv。因此,main函数的函数头可写为:  main (argc,argv)C语言还规定argc(第一个形参)必须是整型变量,argv( 第二个

2015-07-27 18:13:10 3421

原创 C/C++__字符串的结束符“\0”到底是什么

一直对字符串的结束符"\0"的具体意义感到困惑,今天实际测试了一下,最终我找出来了答案。#include #include #pragma warning(disable:4996)#define MAXN 2000int main(int argc, char **argv){ char szFileName[MAXN] = "\0"; //char szFile

2015-07-27 17:52:47 21475

原创 C/C++__如何创建一个空字符串数组

字符串数组在使用前应进行初始化操作。下面介绍两种创建空字符串数组的方法初始化方法1char  szFileName[MAXN]  = {0}          /**其结果相当于memset(szFileName,0,sizoef(szFileName));*即对字符串数组中的每个数据都初始化为(ASCII)0 即 "\0" **/初始化方法2c

2015-07-27 17:38:05 26273 1

原创 C币兑换下载分的页面

http://mall.csdn.net/cbuy/buy_download_coin

2015-07-24 16:00:40 1150

原创 C__数据类型的强制转换

不同大小的数据类型不能强制转换#include #include using namespace std;struct pk{ int d; int a;};int main(){ pk b; int destory = (int)b; return 0;}但是数据大小相同的数据类型就可以进行强制类型转换,即使这两种数据类型是指针与结构体或者in

2015-07-23 18:14:45 1002

转载 Windows画刷,图标等数据结构的原理

DECLARE_HANDLE2009-05-03 10:34关于DECLARE_HANDLE(HINSTANCE)(转载)好多网友会有这样的疑问,WNDCLASSA结构体中遇到的HINSTANCE到底是什么类型,它是否是某种基本数据类型呢?下面通过我的阐述你就会有一个准确的把握了!在WINDEF.H中有这样的语句DECLARE_HANDLE(HINSTANCE)

2015-07-23 18:02:48 674

原创 C_printf中的%p的实质

格式控制符“%p”中的p是pointer(指针)的缩写。指针的值是语言实现(编译程序)相关的,但几乎所有实现中,指针的值都是一个表示地址空间中某个存储器单元的整数。printf函数族中对于%p一般以十六进制整数方式输出指针的值。示例:#include #include int main(){ int *p = new int; int a = 4; printf("%04d\n

2015-07-23 17:49:55 20146 4

原创 位图文件, JPG格式,PNG格式

位图文件(Bitmap),扩展名可以是.bmp或者.dib。位图文件是Windows标准格式图形文件,它将图像定义为由点(像素)组成,每个点可以由多种色彩表示,包括2、4、8、16、24和32位色彩。例如,一幅1024×768分辨率的32位真彩图片,其所占存储字节数为:1024×768×32/8=3072KBbmp是一种与硬件设备无关的图像文件格式,使用非常广。它采用位映射存储格式,除了图

2015-07-23 09:49:54 6900

转载 BM_SETSTATE 消息

精确地讲,当按钮接收到BM_SETSTATE消息并且wParam设置到TRUE时,BM_SETSTATE是按钮专有的消息,用于请求按钮绘制‘按下’或‘释放’模式,每次点击(或发送BM_SETSTATE消息),Windows都自动地通知父窗口这个事件。对于按钮就是BN_CLICKED消息不小心搞掉这个消息,结果不响应BN_CLICKED了,win7直接报无效的参数,当然,可以用SendMes

2015-07-22 18:17:14 2049

转载 WNDCLASS结构中cbWndExtra数据成员的作用

原博客地址 http://blog.csdn.net/mousebaby808/article/details/20299571概述  有人问WNDCLASSEX结构体中cbWndExtra成员到底是做什么用的,在网上也查了一些资料,但说的都不太正确,MSDN上说的也较为含糊,但这个cbWndExtra成员的作用确实是较为重要,首先Windows默认的对话框

2015-07-22 13:58:02 1294

转载 CreateDialog和DialogBox的区别,模态对话框与非模态对话框

INT_PTR DialogBox(          HINSTANCE hInstance,    LPCTSTR lpTemplate,    HWND hWndParent,    DLGPROC lpDialogFunc);这个函数根据对话框资源,创建一个模式对话框,这个对话框应该用EndDialog来结束。hInstance 当前应用程序实例句柄。lpT

2015-07-22 11:05:50 4919

转载 WS_CLIPCHILDREN和WS_CLIPSIBLINGS窗口属性的作用

相信,人多人都对WS_CLIPCHILDREN和WS_CLIPSIBLINGS具体的属性不是很理解,尤其是对WS_CLIPSIBLINGS的理解,通过网络上查资料,看了四五次,每次看懂了但是下次遇到又忘记了,让人很揪心,但是经过几次的实际应用,我终于明白了他们的含义。下面以我在开发实际应用中正确使用来通俗易懂的来说明:(1)WS_CLIPCHILDREN          

2015-07-22 10:33:59 2417

转载 程序笔试题-const变量通过指针修改问题

const的变量在特定情况下可以通过指针修改,但是在另一些情况下是不能通过指针修改。以下是VC6下才测试。1 不能修改的情况#include int const a = 10;void main(void){ int *p = (int*)&a; *p = 20; printf("%d\n", *p);}程序编译通过,但运行时错误:

2015-07-20 10:00:20 597

原创 C++中通过指针修改类内私有成员变量 & 类的大小

#include using namespace std;class T{public: void set(int value){ a = value; } int getValue(){ return a; } virtual void X(){ return; }private: int a;};class K{public: void set

2015-07-20 09:35:14 3297

转载 MFC中CString和STL中string的互换

[技巧]:通过char*作为中介.CString->std::string 例子:CString strMfc=“test“;std::string strStl;strStl=strMfc.GetBuffer(0);std::string->CString  例子:CString strMfc;std::string strStl=“tes

2015-07-09 18:16:03 807

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除