随笔分类 -  C++

摘要:#include<iostream>#include<list>using namespace std;class A{public:int a,b;A(int t1,int t2){a=t1,b=t2;}};struct node{bool operator()(const A& t1,const A& t2){return t1.a<t2.a;//... 阅读全文
posted @ 2009-11-23 20:24 大Vin 阅读(10103) 评论(0) 推荐(0)
摘要:一、同一头文件中类嵌套的疑问假设我们有两个类A和B,分别定义在各自的头文件A.h和B.h中,但是在A中要用到B,B中也要用到A,像下面的写法是错误的:class B;class A{ public: B b;};class B{ public: A a;};因为在A对象中要开辟一块属于B的空间,而B中又有A的空间,是一个逻辑错误,无法实现的。在这里我们只需要把其中的一个A类中的B类型成员改成指针形... 阅读全文
posted @ 2009-11-11 09:58 大Vin 阅读(9954) 评论(1) 推荐(3)
摘要:1.引言做c/c++编程的对#include指令都不会陌生,绝大多数也都知道如何使用,但我相信仍有人对此是一知半解,C:#include <stdio.h>C++:#include <iostream>表示包含C/C++标准输入头文件。包含指令不仅仅限于.h头文件,可以包含任何编译器能识别的C/C++代码文件,包括.c,.hpp,.cpp,.hxx,.cxx等,甚至.txt... 阅读全文
posted @ 2009-11-11 09:34 大Vin 阅读(608) 评论(0) 推荐(0)
摘要:这几个宏是为了进行条件编译。一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。 条件编译命令最常见的形式为: #ifdef 标识符 程序段1 #else 程序段2 #endif 它的作用... 阅读全文
posted @ 2009-11-07 22:03 大Vin 阅读(318) 评论(0) 推荐(0)
摘要:【转】http://hi.baidu.com/lmhopen/blog/item/0282dccbdbbbf21bbf09e62f.html三种建立OpenGL窗口的方法,一种是win32 sdk加OpenGL函数,这种方法写起来极其麻烦,很是繁琐,第二种把建立OpenGL环境所用到的OpenGL函数写成一个小类,然后用win32 sdk加OpenGL类的方式建立OpenGL窗口,这种方法比前一个... 阅读全文
posted @ 2009-10-29 00:36 大Vin 阅读(3322) 评论(0) 推荐(1)
摘要:1.无法从“const char [7]”转换为“LPCWSTR”ANS:工程使用了UNICODE字符集,把你的 "字符串" 包含的字符串修改为_T("字符串")或者不使用UNICODE字符集即可例如: abc.lpszClassName="fb2009"; 应该改为 abc.lpszClassName=_T("fb2009"); 改成这样,还需要包... 阅读全文
posted @ 2009-10-28 22:31 大Vin 阅读(259) 评论(0) 推荐(0)
摘要:动态连接库是在程序运行时加载到内存中的。 静态库是在编译时跟目标文件一起被编译的。 使用动态链接时可能需要把一些库一起打包,以防止有的机子上没有该库文件或者版本不兼容而出现的库的依赖问题; 使用静态链接,会把程序所需的库一起编译,生成的文件可能会大些,但是可执行文件移植时不会出错。VC工程-设置里的使用MFC作为共享的DLL ,使用MFC作为静态链接库,这两选择就是让你选择使用动态库还是使用静态库... 阅读全文
posted @ 2009-10-28 22:09 大Vin 阅读(4164) 评论(1) 推荐(0)
摘要:定义二维数组char array[x][y]; 1.只定义个一维的就可以了 char *array; array = new char[x*y]; 访问的时候*(array+i*y+j)表示array[i][j] 2.定义一个二维数组 char **array1 array1 = new char *[x]; for(i=0;i<x;++i) array1[i] = new ch... 阅读全文
posted @ 2009-02-21 11:25 大Vin 阅读(32199) 评论(2) 推荐(1)