11 2009 档案

摘要:参考MSDN By default, MFC uses the resource handle of the main application to load the resource template. If you have an exported function in a DLL, such as one that launches a dialog box in the DLL, th... 阅读全文
posted @ 2009-11-29 00:29 leukotrichia 阅读(954) 评论(0) 推荐(1)
摘要:由ANSI的标准规定, 预处理指令主要包括:      #define      #error      #if      #else      #elif    ... 阅读全文
posted @ 2009-11-25 16:51 leukotrichia 阅读(481) 评论(0) 推荐(0)
摘要:静态库是在编译时跟目标文件一起被编译的。   DEV-C++: 首先,新建工程,选择Static Library,工程名称设为Myfunc 新建一个名为func.h的头文件,代码如下 #ifndef _define #define _define namespace hehe { int foo(int x,int y); template <typename T> ... 阅读全文
posted @ 2009-11-24 22:00 leukotrichia 阅读(10396) 评论(0) 推荐(1)
摘要:catch只能捕获try块内及try块内调用的函数抛出的异常 如果一个异常没有被捕获,C++将会调用terminate()函数,默认情况下,该函数将会中断程序的执行 可以使用set_terminate()函数来指定一个新的处理函数。如:set_terminate(&foo) 在程序员自定义的处理函数中抛出异常后程序直接中断 可以在catch块中再次抛出异常,但不会被catch捕获,... 阅读全文
posted @ 2009-11-18 00:27 leukotrichia 阅读(941) 评论(0) 推荐(0)
摘要:摘录自《标准C++》 函数对象其实就是一种类似于函数的类的对象。 函数对象必须重载operator()函数   #include <iostream> #include <queue> #include <ctime> using namespace std; template <typename T> class MyCo... 阅读全文
posted @ 2009-11-17 17:42 leukotrichia 阅读(1491) 评论(0) 推荐(0)
摘要:摘录自《标准C++》 STL提供了3种容器适配器,它们分别是栈(stack),队列(queue),优先级队列(priority_queue) 栈(先进后出,后进先出) 使用栈必须包含头文件<stack>,模板参数为 template<class T,class Container=deque<t> >     ... 阅读全文
posted @ 2009-11-17 16:53 leukotrichia 阅读(1566) 评论(2) 推荐(0)
摘要:  重载一个操作符,就是编写一个函数,当类对象按预先规定的方式使用这个运算符时,该函数就被调用。   下面列出重载操作符时必须遵循的一些规则:   不能重载用于C++内部数据类型的操作符。例如,不能重载双目整数加法运算符。 不能自己创造C++语言中不存在的操作符。例如,美元符号$不是C++中的运算符,因此不可以用来重载 除了下列操作符,其他操作符皆可被重载  ... 阅读全文
posted @ 2009-11-16 17:56 leukotrichia 阅读(419) 评论(0) 推荐(1)
摘要:为普通的变量申请内存空间,可以使用下面的语法规则。 new int; //开辟一个存放整型变量的空间,返回一个指向整形数组的指针 new int(100); //开辟一个存放整形变量的空间,并指定其初值为100 float* p=new float(3.1415926); //开辟一个存放实数的空间,并指定该实数的初值为3.1415926, //将返回的指向实型数据的指针赋给指针变量p 当ne... 阅读全文
posted @ 2009-11-16 17:25 leukotrichia 阅读(209) 评论(0) 推荐(1)
摘要:在C++语言中,一个派生类可以从一个基类派生,也可以从多个基类派生。 从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。                例:单继承的定义 class B:public {    &#... 阅读全文
posted @ 2009-11-16 17:22 leukotrichia 阅读(816) 评论(0) 推荐(0)
摘要:  C++中支持指针操作,一方面极大限度的提高了编程灵活性,但同时带来了安全隐患   通常的内存错误被归结为以下4点:内存泄露,重复释放,坏指针问题和超量写内存   1.内存泄露 在分配了一块内存空间后,如果不再需要这些数据就应当考虑将其释放。 如果被分配的内存空间不再需要时且程序员没有将其释放,那么这块空间将随同程序运行而一直存在。 这在极少情况下也有... 阅读全文
posted @ 2009-11-16 17:20 leukotrichia 阅读(4043) 评论(0) 推荐(0)
摘要:一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由系统回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,... 阅读全文
posted @ 2009-11-16 17:17 leukotrichia 阅读(183) 评论(0) 推荐(0)
摘要:1,字符串 到 数值类型的转换 2,数值 到 字符串的转换 3,异常处理情况 4,boost::lexical_cast 的原型: template<typename Target, typename Source>     Target lexical_cast(Source arg); lexical_cast 是依赖于字符串流 std::string... 阅读全文
posted @ 2009-11-16 17:15 leukotrichia 阅读(15215) 评论(0) 推荐(0)
摘要:C++操作符的优先级 操作符及其结合性 功能 用法 L L L :: :: :: 全局作用域  类作用域  名字空间作用域 ::name class::name namespace::name L L L L L . -> [] () () 成员选择  成员选择  下标  函数调用  类型构造  object.member... 阅读全文
posted @ 2009-11-16 17:05 leukotrichia 阅读(11444) 评论(0) 推荐(2)
摘要:有两种方法可以得到BOOST的二进制库文件。 第一种比较简单,在DEV-C++的Tools菜单里选择Check for updates蔡单项,然后在弹出的对话框中选择devpaks.org Community Devpaks, 单击Check for updates按钮 几秒钟后下载完毕,在Groups中选择C++ Libraries,然后在Available updates list中选择B... 阅读全文
posted @ 2009-11-16 16:57 leukotrichia 阅读(1137) 评论(0) 推荐(0)