随笔分类 -  VC++

C++、VC学习吧
摘要:C++ 宏定义将一个标识符定义为一个字符串,源程序中的该标识符均以指定的字符串来代替。预处理命令不同于一般C++语句。因此预处理命令后通常不加分号。这并不是说所有的预处理命令后都不能有分号出现。由于宏定义只是用宏名对一个字符串进行简单的替换,因此如果在宏定义命令后加了分号,将会连同分号一起进行置换。 阅读全文
posted @ 2012-11-18 10:18 大气象 阅读(4568) 评论(1) 推荐(1) 编辑
摘要:作为曾经的C#开发者,习惯于为控件指定top,left,width,height 在MFC中没找到,难道靠目测,靠网格,呵呵。 原来MFC所有控件都是窗口,都有CRect 阅读全文
posted @ 2012-11-17 21:55 大气象 阅读(5914) 评论(0) 推荐(1) 编辑
摘要:流行的用法:用二进制的每一位代表一种状态。 001,010,100这样就表示三种状态。 通过或|运算就可以组合各种状态。 001 | 010 = 011 001 | 010 | 100 = 111 通过与&运算可以去除某种状态。 111 & 001 = 110 阅读全文
posted @ 2012-11-11 10:56 大气象 阅读(7170) 评论(1) 推荐(1) 编辑
摘要:继承CWnd的类都能放到工具条上。 原理: 1.在工具条资源添加分隔符SEPARATOR 2.设置分隔符宽度 3.得到分隔符窗口CRect 4.根据分隔符窗口创建Create组合框ComboBox 阅读全文
posted @ 2012-11-07 20:40 大气象 阅读(6427) 评论(1) 推荐(0) 编辑
摘要:1.只有重载的类或者结构才能作为map的key值。 string可以作为key值是因为string重载了 2.如果不重载会提示如下错误: error C2676: 二进制“”: “const C”不定义该运算符或到预定义运算符可接收的类型的转换 3.重载但是没有实现会提示如下错误: Expression: invalid operator 比如bool operator (const C &c) const{return true;} 阅读全文
posted @ 2012-11-05 20:21 大气象 阅读(18944) 评论(1) 推荐(3) 编辑
摘要:MFC消息机制涉及许多知识,比如消息分类,消息映射等。 知识先了解一下,马上动手实践才是硬道理。 我建了个SDI项目,把常用的消息试验了一遍。 如果像我一样初学的,可以留下邮箱索取源码。 阅读全文
posted @ 2012-11-04 19:26 大气象 阅读(6314) 评论(21) 推荐(5) 编辑
摘要:纸上得来终觉浅,为了熟悉获取方法,我建了个SDI。 首先说明这四个类的执行顺序是App->Doc->Main->View 另外添加CDialog类获得各个指针的方法。 多文档的获取有点小区别,有时间也总结一下。 阅读全文
posted @ 2012-11-02 21:56 大气象 阅读(12817) 评论(2) 推荐(1) 编辑
摘要:一个要点:转化为char * 为什么要这样转化?没查到相关的解释,哪位高手知道,敬请告知。 阅读全文
posted @ 2012-10-29 20:37 大气象 阅读(30481) 评论(6) 推荐(4) 编辑
摘要:我要动态生成mfc菜单,动态绑定响应命令。 首先把菜单关键词和函数指针绑定在map中, 再通过关键词找到函数来执行。 阅读全文
posted @ 2012-10-27 23:43 大气象 阅读(9094) 评论(0) 推荐(0) 编辑
摘要:本以为这么多年C#经验,学个C++没多难,现在发现错了。C++真TM难。 今天遇到int转string绊了半天,方法很多,不知道为什么搞那么复杂, 我只挑最简单易懂的,管他效率不效率的。 阅读全文
posted @ 2012-10-24 21:08 大气象 阅读(214946) 评论(8) 推荐(4) 编辑
摘要:SendMessage函數是阻塞的。PostMessage函數是非阻塞的。 SendMessage: 函数功能:该函数将指定的消息发送到一个或多个窗口。 此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。 而函数PostMessage不同,将一个消息寄送到一个线程的消息队列后立即返回。 阅读全文
posted @ 2012-10-01 10:48 大气象 阅读(26009) 评论(7) 推荐(0) 编辑
摘要:sqlite小巧好用,功能强大。 C++操作sqlite需要sqlite3.h,sqlite3.dll,sqlite3.lib 下载sqlite-dll-win32-x86-3071400.zip和sqlite-amalgamation-3071400.zip 前者可以得到sqlite3.dll和sqlite3.def后者可以得到源码sqlite3.h 后面说明如何编译sqlite3.def生成sqlite3.lib 阅读全文
posted @ 2012-09-22 22:42 大气象 阅读(11633) 评论(0) 推荐(0) 编辑
摘要:今天学了一下在mfc单文档下运行osg. 在osg源码中examples目录有个osgviewerMFC项目, 包括sdi和mdi的示例代码。 阅读全文
posted @ 2012-09-21 20:14 大气象 阅读(5375) 评论(1) 推荐(1) 编辑
摘要:首先到osgChina下载一个安装包,也就是二进制压缩包。 http://www.osgchina.org/projects/osgcn/wikicn/Downloads.php 目前最新是 3.0.1版本 OpenSceneGraph-3.0.1-VS9.0.30729-x86-debug-12741.7z 阅读全文
posted @ 2012-09-19 20:28 大气象 阅读(7496) 评论(1) 推荐(0) 编辑
摘要:1.iterator,const_iterator作用:遍历容器内的元素,并访问这些元素的值。iterator可以改元素值,但const_iterator不可改。跟C的指针有点像 (容器均可以++iter,而vector还可以iter-n, iter+n,n为一整型,iter1-iter2:结果是difference_type类型,表两元素的距离.) 2.const_iterator 对象可以用于const vector 或非 const vector,它自身的值可以改(可以指向其他元素),但不能改写其指向的元素值. 3.const iterator与const_iterator是不一样的:声明一个 const iterator时,必须初始化它。一旦被初始化后,就不能改变它的值,它一旦被初始化后,只能用它来 改它指的元素,不能使它指向其他元素。(因此const iterator几乎没什么用途) 阅读全文
posted @ 2012-09-12 20:21 大气象 阅读(34041) 评论(0) 推荐(5) 编辑
摘要:速记vc小知识。 阅读全文
posted @ 2012-09-12 19:30 大气象 阅读(1161) 评论(7) 推荐(0) 编辑
摘要:支持VC2010的类库下载(目前只支持11.2.0.3.0和11.2.0.3.0客户端): 可能是类库与客户端版本不匹配,建立的连接有问题。 debug下运行正常,release下去始终运行出错,不知何故。 阅读全文
posted @ 2012-09-08 20:34 大气象 阅读(5633) 评论(1) 推荐(2) 编辑
摘要:1.新建对话框MFC,在对话框上放一个ListCtrl ID:IDC_PATH View:Report 2.为ListCtrl添加变量 右击->添加变量m_wndPath 3.找到OnInitDialog()函数添加如下代码: 4.char被TCHAR取代,若要用则: 项目属性->字符集:使用多字节字符集 阅读全文
posted @ 2012-08-12 20:29 大气象 阅读(34442) 评论(1) 推荐(2) 编辑
摘要:最近项目中用html 来做界面,也就折腾了一下在wxwidget中嵌入浏览器的若干细节工作,mfc也基本是类似的,由于wxwidget中已经做了一个封装wxie,但是开发过程中也遇到了不少问题,在此做一下总结: 阅读全文
posted @ 2011-06-26 16:47 大气象 阅读(11256) 评论(4) 推荐(3) 编辑
摘要:CFileDialog dlg(TRUE,_T("TXT"),_T("*.TXT"),OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT ,_T("文本文件(*.TXT)|*.TXT|")); 阅读全文
posted @ 2011-03-09 20:53 大气象 阅读(627) 评论(0) 推荐(0) 编辑

http://www.tianqiweiqi.com