2012年6月19日
摘要: 摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术。本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作出解答。目录:一、术语session二、HTTP协议与状态保持三、理解cookie机制四、理解session机制五、理解javax.servlet.http.HttpSession六、HttpSession常见问题七、跨应用程序的session共享八、总结参考文档一、术语session在我的经验里,session这个词被滥用的程度 阅读全文
posted @ 2012-06-19 12:56 Jiang, X. 阅读(925) 评论(0) 推荐(0) 编辑
摘要: 方法1:工程右键--Build Path--Configure Build Path -- Java Build Path --Libraries -- Add External JARs方法2:工程--Referenced Libraries右键--Build Path--Configure Build Path -- Java Build Path --Libraries -- Add External JARs 阅读全文
posted @ 2012-06-19 00:39 Jiang, X. 阅读(17225) 评论(0) 推荐(0) 编辑
2012年5月14日
摘要: 用进程管理的方法进行自我时间管理操作系统为了实现大的吞吐量,处理器的高效利用,各类资源的平衡使用,短的周转时间,快的响应时间,有保障的截止时间,设计了很多进程调度算法。而人类的思想成果是可以迁移的,这些算法在我们的日常生活中同样适用,并且能帮助我们发挥出更高的效率。进程的三个队列:等待,就绪和执行。这三个队列可以对应于我们所要做的所有事情中:现在可以做的事情,需要一定条件才能做的事情和正在做的事情。对于现在可以做的事情,也就是就绪队列中的事务列表,我们可以采取短作业优先的处理方法(我习惯于这样),因为可以获取大的吞吐量,即能够完成较多的事情。事实上,往往需要对这些任务按照一定的优先级进行排序, 阅读全文
posted @ 2012-05-14 21:51 Jiang, X. 阅读(251) 评论(0) 推荐(0) 编辑
2012年5月8日
摘要: 在网上很难找相关的资料,我自己实现了一种,但是其中的一些偏移量与标准中的不一致。个别偏移量是根据我自己的三星手机拍的照片得到的。目前测试我自己的手机拍的照片得到的结果是正确的,现在把代码贴在这里,希望大家能够提出其中的错误,共同提高。从JPG文件中获取GPS信息的方法提取Exif(Exchangeable image file format)数据结构中与GPS对应的IFD(Image File Directory)信息,即GPS_TAG。关键是要明确JPEG文件的文件结构。//Get GPS Info From JPG File //Johnny.cxx@gmail.com //201... 阅读全文
posted @ 2012-05-08 21:38 Jiang, X. 阅读(2958) 评论(1) 推荐(0) 编辑
2012年4月3日
摘要: 美国教授如何判别申请的学生是否有潜力(Johnny翻译)作者:Sanjoy Das, Assistant Professor, KansasStateUniversityPh.D. 1994, Louisiana StateUniversity.Evolutionary algorithms, neural networks,artificialintelligence, discrete optimization.(这里采用第一人称翻译)我每天都会收到国际学生的email,他们希望从我这里获得信息与建议,尤其是奖学金。不幸的是,我会删除绝大多数的邮件,因为我认为它们不值得详细阅读。我希望与有 阅读全文
posted @ 2012-04-03 21:17 Jiang, X. 阅读(398) 评论(0) 推荐(0) 编辑
2012年4月2日
摘要: 众所周知,在Linux上安装软件是一件比较痛苦的事情,尤其是对于Fedora16这样的较新的操作系统,网上的资源相对较少。 自己在Adobe的官网下了linux操作系统的rpm包,在安装的时候提示错误,无法完成安装。 今天终于找到了一种安装方法,并在我的笔记本上安装成功,在这里分享给大家,也为我将来留一份文档。1. su 以管理员的权限进入终端。2. 安装Adobe YUM Repository RPM包## Adobe Repository 32-bit x86 ## rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-r. 阅读全文
posted @ 2012-04-02 13:30 Jiang, X. 阅读(1040) 评论(0) 推荐(0) 编辑
摘要: 《约翰克里斯朵夫》读书笔记《约翰克利斯朵夫》是我大学这几年最爱读的书,它给人以一种很震撼的力量感,它的精彩之处不在于故事情节,而在于罗曼罗兰深刻的人生洞见以及至强的表达力,让人看到关于人生的很多真理。真正的光明决不是永没有黑暗的时间,只是永不被黑暗所掩蔽罢了。真正的英雄决不是永没有卑下的情操,只是永不被卑下的情操所屈服罢了。所以在你要战胜外来的敌人之前,先得战胜你内在的敌人;你不必害怕沉沦堕落,只消你能不断的自拔与更新。克利斯朵夫重新上路,步子似乎跟以前一样的稳健了;他把心房关起来,不让痛苦闯进去。他不对别人提到他的痛苦,自己也避免和痛苦劈面相见:他好象很平静了。巴尔扎克说过:“真正的苦恼在心 阅读全文
posted @ 2012-04-02 11:28 Jiang, X. 阅读(1500) 评论(0) 推荐(0) 编辑
2012年2月22日
摘要: 更改命令提示符:PS1="\nHi, \u! You are in [\w] now! ^_^ \n[Shell]$"切换到终端:Ctrl + Alt + F2切换到图形界面:Ctrl + Alt + F1 阅读全文
posted @ 2012-02-22 22:55 Jiang, X. 阅读(224) 评论(0) 推荐(0) 编辑
2012年1月29日
摘要: 某国外论坛关于什么是Computer Science的争论,你怎么看?链接:http://www.physicsforums.com/showthread.php?t=262434 看到这番讨论,我最先想到的是,如果这个问题是在csdn提出的,是不是又很多人说***,***之类的话。我看到的是,面对CS,虽然有人消极有人积极,但总是理性的,只是思考与了解的深度的问题。而目前的中国人还有什么梦?美国梦吗? 有人看到了中国和印度码农们对世界的影响; 有人把编程看作是一种基本的技能而不论你读得什么专业; 有人把编程看作一种速食,像KFC; 有人指出了Computer Science与 Program 阅读全文
posted @ 2012-01-29 21:24 Jiang, X. 阅读(655) 评论(0) 推荐(0) 编辑
摘要: 0.F5插入当前系统时间;1.在记事本的开头输入 .LOG 每次打开时就会在结尾处自动插入当前时间;2.选中 格式-自动换行 将使显示的内容根据对画框的大小而换行,免去左右移动滚动条的痛苦;3.文件-另存为 能够选择不同的编码方式进行保存。 阅读全文
posted @ 2012-01-29 20:39 Jiang, X. 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 谷歌如何保护隐私一个拥有大量个人隐私的公司如何才能有效保障用户的隐私? 在个人信息泄露硝烟四起的2010年底,google提名Whitten为隐私保护部门主管。随后,Whitten便开始在公司宣传他的“隐私文化”并且初显成效。 在过去的一年中,Google发布了新的隐私保护工具,从多个方面保护用户的隐私,并且建立故障保险柜以便在受到攻击时仍能采取相应的举措。 Whitten在接受新闻采访时说,“我们已经做出了令人瞩目的成绩,我们已经造好了汽车,现在只是在做一些小的调整。” 作为调整的一部分,Google在周二推出了一项关于精简隐私政策的声明,决定结束不同的产品的不同隐私标准。Google将把它 阅读全文
posted @ 2012-01-29 20:13 Jiang, X. 阅读(578) 评论(0) 推荐(0) 编辑
2012年1月1日
摘要: main.cpp#include <QtGui/QApplication> #include "analogclock.h" Q_DECL_EXPORT int main(int argc, char *argv[]) { QApplication theApp(argc, argv); AnalogClock clock; clock.show(); return theApp.exec(); } analogclock.h#ifndef ANALOGCLOCK_H #define ANALOGCLOCK_H #include <QWidget> 阅读全文
posted @ 2012-01-01 23:29 Jiang, X. 阅读(1769) 评论(0) 推荐(0) 编辑
2011年12月30日
摘要: 安装apacheyum install httpd现在配置下系统使得Apache能够随着系统启动而启动…chkconfig --levels 235 httpd on... 启动Apache:/etc/init.d/httpd start打开浏览器输入http://127.0.0.1/即可看到Apache的预留页。然后在/var/www/html路径下创建文件index.html内容为<html><head>Welcome to my web.</head></html>在浏览器中输入http://127.0.0.1 或者 localhost即可 阅读全文
posted @ 2011-12-30 19:26 Jiang, X. 阅读(774) 评论(0) 推荐(0) 编辑
2011年12月25日
摘要: 飞机绕地球环行问题题目:已知每架飞机有一个油箱,飞机之间可以相互加油,一整油箱的油可以供一架飞机绕地球飞行半圈。为使至少一架飞机绕地球一圈回到飞机起飞的机场,至少需要使用几架飞机,飞行几个架次?所有飞机从同一飞机场起飞,而且必须安全返回机场,不允许中途降落,一架飞机起飞一次算作一架次,加油时间可以忽略。计算法(johnny原创):设飞机油箱容量为V,绕地球飞行一圈的总行程为L,初始时有三架飞机A/B/C,飞机耗油情况为2V/L (油量/行程)。设第一段三个飞机共同飞过的路程为s1.则:C可加给他人的油(考虑到自身返回):V – 2 * s1 * 2V/L该值必须大于0,解的s1 < L/ 阅读全文
posted @ 2011-12-25 15:57 Jiang, X. 阅读(648) 评论(0) 推荐(0) 编辑
2011年12月24日
摘要: 工程素养 译文: 在工程领域,每一个工程师都应该具备的精神是: 我能够很好地处理所面临的问题。 不论究竟是怎样的问题,一定有解决的方法。这种解决方法是可知的,也是可行的。而唯一不去执行的原因就是所谓的,缺乏资源。 这种很好的处理方式应该具备一定的预见性。它要有能力处理一些未知的状况,甚至是不明确的行为。 保持相对简单而又能够处理所有复杂情况的方案,就是好的解决方案。 而这里有很多不去很好处理问题的借口:“我不知道该如何去做。” 通常来说,这只需要一些学习与探索的精神。“团队不会支持这种做法。” 在一个团队中应该由有经验的工程师做出决定,而不是所有人共同做出决定。我现在很累/困... 阅读全文
posted @ 2011-12-24 18:49 Jiang, X. 阅读(1470) 评论(0) 推荐(0) 编辑
摘要: 你的代码是否过于复杂? 译文: 如果你的代码中出现了下列的情况,就说明你的代码过于复杂了: 你需要在代码中添加“hack”来使其正常工作。其他的开发人员经常问你一些代码块是如何工作的。其他的开发人员经常错误使用你的代码,并导致了不少的bug。有经验的开发人员不能一眼看出你代码的含义。你很害怕修改这部分的代码。管理层认为需要多人共同维护一个简单的类或者文件。很难添加新的特性。开发者经常为如何实现这段代码的功能而争论。这部分代码经常修改。原文: Here are some clues that tellyou that your code may be too complex:Youhave... 阅读全文
posted @ 2011-12-24 18:27 Jiang, X. 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 花了将近一整天的时间,才用openCV把这张词法分析状态转换图画出来。发现自己代码的健壮性与重用性如此之差。看来要练一下算法了,来年多看点open的linux源码。附图(1022*4500): 阅读全文
posted @ 2011-12-24 18:13 Jiang, X. 阅读(184) 评论(0) 推荐(0) 编辑
2011年12月23日
摘要: C++引入构造函数的目的在于对变量的初始化做出强制,因为人们发现,程序的错误,很大程度上来说,都是由变量没有初始化造成的。 因此,一种很好的编程习惯就是,在定义变量的时候直接初始化。而在C++中,在变量定义时,系统会自动调用变量的构造函数对变量进行初始化。只要将相应的初始化代码放在构造函数中,就能够保证该类在实例化对象的时候能够给对象赋以理想的初值。 而事实远远没有这么简单。 实际上,程序在进入构造函数的大括号体时,就已经完成了变量的定义(也就是分配内存空间)。这就难免会造成这样的一种情况:在对象被构造时,程序进入构造函数大括号体之前,首先调用对象的default构造函数,... 阅读全文
posted @ 2011-12-23 13:36 Jiang, X. 阅读(528) 评论(0) 推荐(0) 编辑
2011年12月22日
摘要: cd ~wget http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.3/OpenCV-2.3.0.tar.bz2tar -xvf OpenCV-2.3.0.tar.bz2cd OpenCV-2.3.0/mkdir releasecd releasecmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..makesumake installvim /etc/ld.so.c 阅读全文
posted @ 2011-12-22 19:24 Jiang, X. 阅读(620) 评论(0) 推荐(0) 编辑
2011年12月21日
摘要: 艾伦·萨克斯(A. Sachs)有句话是这么说的:“死比生更普遍,人皆有一死,但并非谁都活过”。的确,得过且过的人无数,但是真正活过的人不多。2011年终将近,此刻,我们应该纪念一下一些今年逝去的人,虽然他们逝去了,但是凭借着在技术界、甚至在全世界做出的卓越影响,他们完全可以无愧地说:“我们活过了”。乔布斯(1955年2月24日-2011年10月5日)杰出的创新者,纯粹的开拓者,有谁能够像他那样终其一生照耀整个业界,变革整个行业?虽然他并不能将每一样东西都点石成金,但是,作为我们这个时代最杰出的发明者之一,他一定会被我们久久铭记。乔布斯对细节的关注、他的商业天才,还有专注以及无情的内 阅读全文
posted @ 2011-12-21 13:32 Jiang, X. 阅读(300) 评论(0) 推荐(0) 编辑
2011年12月20日
摘要: 输入/输出的数据没有指定格式,它们都按缺省的格式输入/输出。然而,有时需要对数据格式进行控制。这时需利用ios类中定义的格式控制成员函数,通过调用它们来完成格式的设置。ios类的格式控制函数如下所示:longflags()const返回当前的格式标志。longflays(longnewflag)设置格式标志为newflag,返回旧的格式标志。longsetf(longbits)设置指定的格式标志位,返回旧的格式标志。longsetf(longbits,longfield)将field指定的格式标志位置为bits,返回旧的格式标志。longunsetf(longbits)清除bits指定的格式. 阅读全文
posted @ 2011-12-20 17:05 Jiang, X. 阅读(3377) 评论(2) 推荐(0) 编辑
摘要: 感悟数据封装通常,人们将“把数据和函数捆绑在一起”以及“隐藏实现”的操作称为数据封装。今天在实验室调试了一个同学矩阵加减乘除的程序,切身体会到数据封装之重要性。情况是这样的,一个矩阵加减乘除的题目,要求矩阵是稀疏矩阵,他就建了一个三元组,分别存储矩阵中元素的行/列/数据。然后再将这个三元组存储在数组中构成这个矩阵。而老师要求他改为用类似于邻接链表的方法实现。在调试的过程中,我充分体会到了逻辑不清晰以及数据耦合度高所带来的痛苦。因为他的矩阵是在数组中存储的,在整个程序中所有相关的操作都是通过访问数组下标实现的,也就是说,数据的存储结构在程序中的所有地方都是透明的,毫无抽象与封装的概念可言。那么在 阅读全文
posted @ 2011-12-20 14:47 Jiang, X. 阅读(290) 评论(0) 推荐(0) 编辑
2011年12月18日
摘要: C++static / const /static const型成员变量一 static关键字的两类作用在C++中,static关键字的两类作用分别是:控制可见性与 控制存储类型。二 static成员变量的来源staitc类型成员变量的出现是为了解决同一个类的所有对象共享参数的问题,实际上就是对存储类型的控制。在C语言中,这样的控制往往通过全局变量直线。而使用static成员变量的方法与使用global类型变量方法的相比有明显的优点:作用域,staticmember是在class的作用域中的,它能够防止命名的冲突。数据封装,staticmember可以是private类型的。易于理解。三 st 阅读全文
posted @ 2011-12-18 20:24 Jiang, X. 阅读(4936) 评论(0) 推荐(0) 编辑
2011年11月30日
摘要: 开发者的骄傲 你的程序对我没那么重要。我不关注它的用户界面,不关注它的名字,也不关注谁开发了它或者它是什么版本。 我所关注的唯一一件事情就是,你的程序能否帮我实现我的目的。这是一个真正了不起的成就,如果你的程序实现了它,你应该感到自豪。没有必要对关注那些你认为重要的地方。 当然,你的程序对你至关重要。写过很多代码之后,你就会意识到这一点:代码很难写。你用你非凡的无限智慧站在了智力的顶峰。你甚至已经克服了人类所面临的最大的心理障碍。诚然,你可以站在每一座高塔的顶峰,每一条街道的路口欢呼雀跃。 但是,请不要这样!因为你的用户从来不关注这些。 如果你真的聪明,就把程序最好地一面展现给用户。它如此完美 阅读全文
posted @ 2011-11-30 17:59 Jiang, X. 阅读(219) 评论(0) 推荐(0) 编辑
2011年11月23日
摘要: /******************************************************************************* 交通灯 ***********************************************************************************/ #include <reg51.h> #include <intrins.h> sbit LS138A = P2^2; //定义138译码器的输入A脚由P2... 阅读全文
posted @ 2011-11-23 15:34 Jiang, X. 阅读(792) 评论(0) 推荐(0) 编辑
摘要: C#与51单片机串口通信51接受数据,PC发送数据。通过单片机的数码管将PC发送的16进制数据显示出来。51接受数据代码:#include <reg51.h> #include <string.h> #include <intrins.h> sbit LS138A = P2^2; //定义138译码器的输入A脚由P2.2控制 sbit LS138B = P2^3; //定义138译码器的输入脚B由P2.3控制 sbit LS138C = P2^4; //定义138译码器的输入脚C由P2.4控制 unsigned char ch; bit read_flag= 阅读全文
posted @ 2011-11-23 13:41 Jiang, X. 阅读(6993) 评论(1) 推荐(0) 编辑
2011年11月17日
摘要: 今天使用移动硬盘的时候强制拔掉了数据线,再此连上之后发现原来的F/G/H三个盘的盘符都在,但是F盘只有盘符,双击之后提示"文件或目录损坏且无法读取"。而这个盘有我70G的数据。 于是上网查资料,发现可能是磁盘的分区遭到了损坏。 解决方法:1.进入命令提示符;2.输入 chkdsk /f F:3.完成。 考虑到大家经常使用到移动硬盘,就把它记录下来,分享给大家。同时也提醒大家,重要数据要及时备份,否则后悔莫及。 阅读全文
posted @ 2011-11-17 18:54 Jiang, X. 阅读(355) 评论(0) 推荐(0) 编辑
2011年11月16日
摘要: UTF-8, a transformation format of Unicode and ISO 10646UTF8,一种Unicode与ISO 10646的转换格式Status of this Memo本备忘的状态 This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind. Distribution of this memo is unlimited. 这份备忘录为网络社区提供信息。本备忘录不指定任何一种Int. 阅读全文
posted @ 2011-11-16 14:03 Jiang, X. 阅读(440) 评论(0) 推荐(0) 编辑
2011年11月13日
摘要: 1.命令:su输入管理员密码,进行密码认证。2.命令:mkdir /mnt/USB在mnt目录下建立USB文件夹。3.命令:fdisk -l分别查看U盘插入前后的磁盘分区情况,并得到U盘所在分区。4.命令:mount -t vfat /dev/sdb1 /mnt/USB挂载U盘设备。5.命令:ls -la /mnt/USB挂载成功后查看U盘中的文件。6.命令:umount /mnt/USB完成操作后对U盘进行卸载。否则容易对U盘造成损坏。 阅读全文
posted @ 2011-11-13 15:36 Jiang, X. 阅读(268) 评论(0) 推荐(0) 编辑
2011年11月10日
摘要: POSIX 标准钟关于程序名、选项和参数方面的约定:程序名不应该少于 2 个字符,且不多于 9 个字符程序名应该只包含小写字母和阿拉伯数字选项名应该是单字母或单数字的字符,多数字选项应该是不允许的。 -W 选项为专指供应商而预留所有选项应该以 '-' 开始对于那些不需要参数的选项来说,将多个 '-' 后面的选项聚合在一起应该是可以的(例如,'foo-a-b-c' 和 'foo-abc' 应该同样处理)当选项确实需要参数的时候,参数与选项之间应该用空格分隔开(例如,'fgrep -f patfile' )。然而,PO 阅读全文
posted @ 2011-11-10 21:58 Jiang, X. 阅读(1398) 评论(0) 推荐(0) 编辑
2011年11月8日
摘要: 裘宗燕:C/C++ 语言中的表达式求值经常可以在一些讨论组里看到下面的提问:“谁知道下面C语句给n赋什么值?”m = 1; n = m+++m++;最近有位不相识的朋友发email给我,问为什么在某个C++系统里,下面表达式打印出两个4,而不是4和5:a = 4; cout << a++ << a;C++ 不是规定 << 操作左结合吗?是C++ 书上写错了,还是这个系统的实现有问题?要弄清这些,需要理解的一个问题是:如果程序里某处修改了一个变量(通过赋值、增量/减量操作等),什么时候从该变量能够取到新值?有人可能说,“这算什么问题!我修改了变量,再从这个变量 阅读全文
posted @ 2011-11-08 13:12 Jiang, X. 阅读(376) 评论(0) 推荐(0) 编辑
2011年11月4日
摘要: Fedora下python “no module named numpy” 解决方案基本情况: On Linux, Scipy and Numpy official releases are source-code only. Installing Numpy and Scipy from source is reasonably easy; However, both packages depend on other software, some of them which can be challenging to install, or shipped with incompatibil 阅读全文
posted @ 2011-11-04 14:17 Jiang, X. 阅读(4746) 评论(0) 推荐(0) 编辑
2011年11月3日
摘要: doxygen 是一种功能强大的代码文档化工具,被Boost、OpenCasCade等诸多项目作为文档生成的不二人选。 它有一套规范的代码注释标准,如果开发人员在代码中使用这种标准,就能够通过Doxygen方便地生成html/Pdf等格式的文档,界面非常规范美观。Linux Doxgen 可以在这里下载:http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc1.安装方法:我的电脑的下载路径为:主文件夹--下载。下载完成之后在terminal输入指令: 1.tar xvfz 下载/doxygen-1.7.5.1.src.tar.. 阅读全文
posted @ 2011-11-03 21:06 Jiang, X. 阅读(901) 评论(0) 推荐(0) 编辑
2011年11月1日
摘要: 如果用0..1...来看待这个世界,那里必然充满了各种class。 每个人最深层继承的基类是相同的,而derived的部分差别却很大。 一些人很懒,所有的内存都直接分配,memory永远不会发生变化。 一些人善于自我管理,所有new的内存空间都用auto_ptr,内存自然不会泄漏。 一些人做事严谨,所有new的空间都在适当的地方delete掉,但却感觉很累,因为在每一个可能抛出exception的地方都要被考虑到。 当然,智者千虑,必有一失。直接分配的数组会发生溢出;auto_ptr在面对循环引用时手足无措;而直接delete的方法也可能会因逻辑错误造成悬挂指针。 虽然boost又提出了各种. 阅读全文
posted @ 2011-11-01 11:08 Jiang, X. 阅读(170) 评论(0) 推荐(0) 编辑
摘要: % Matlab控制系统的建模及模型间的转换%内容包含:% 1.由 系数 建立 传递函数% 2.由 零极点 建立 传递函数% 3.由 传递函数 得到 零极点方程系数% 4.把 传递函数 转化为 零极点模型% 5.结构框图间的运算%%---------------------------------------------------------------%%传递函数的模型表示num = [1 5] % 分子多项式 降幂 系数向量den = [1 2 3 4 5] % 分母多项式 降幂 系数向量G = ... 阅读全文
posted @ 2011-11-01 10:59 Jiang, X. 阅读(1331) 评论(0) 推荐(0) 编辑
2011年10月20日
摘要: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; namespace Regular_Expression_1 { class Program { static void Main(string[] args) { Console.WriteLine(@"This will find a match for the regul... 阅读全文
posted @ 2011-10-20 19:41 Jiang, X. 阅读(192) 评论(0) 推荐(0) 编辑
2011年10月19日
摘要: Visual Studio OpenGL 配置方法OpenGL开发库的文件包含:动态链接库文件(.dll)glut32.dll、glu.dll、glut.dll、OPENGL.DLL。头文件(.h)GL.H、GLAUX.H、GLEXT.H、GLU.H、GLUT.H、WGLEXT.H。库文件(.lib)GLAUX.LIB、Glu32.lib、Glu.lib、glut32.lib、glut.lib、Opengl32.lib、opengl.lib。配置方法:1.将开发库中的.h文件拷贝到Visual C++ 6.0的\Include\GL目录中2.将.lib文件拷贝到Visual C++ 6.0的\ 阅读全文
posted @ 2011-10-19 13:49 Jiang, X. 阅读(2107) 评论(0) 推荐(0) 编辑
2011年10月17日
摘要: 问题: 一个MFC –SDI程序在关闭的时候自动提示”是否保存对XXX的更改”,而本身不希望出现这样的提示。同时发现,在打开一个文档后,再打开一个文档,同样会出现这样的提示。解决过程:1、在void CMainFrame::OnClose()中插入断点,发现提示对话框是通过CFrameWndEx::OnClose()产生的。2、追踪CFrameWndEx::OnClose()函数的实现,发现该函数的实现是在afxframewndex.cpp文件中。将该文件通过vs打开,进行跟踪,发现提示是在CFrameWnd::OnClose()函数中产生的。3、继续追踪,发现是在winfrm.cpp中实现的 阅读全文
posted @ 2011-10-17 21:40 Jiang, X. 阅读(1215) 评论(0) 推荐(0) 编辑
2011年10月16日
摘要: 头文件1、 define保护头文件的命名应基于其所在项目源代码树的全路径。2、 头文件依赖使用前置声明(forward declaration),尽量减少.h文件中#include的数量。能依赖声明的就不依赖定义。3、 内联函数只有当函数少于10行或更少时,才使用内联类型。4、 -inl.h复杂内联函数的定义,应放在-inl.h文件中。5、 函数定义顺序输入参数在前,输出参数在后。6、 文件包含顺序C库\C++库\其它库的.h\项目内的.h命名空间1、 命名空间在.cc文件中推荐使用不具名的命名空间(unnamednamespaces).不能在.h文件中使用不具名的命名空间。2、 嵌套类(Ne 阅读全文
posted @ 2011-10-16 16:04 Jiang, X. 阅读(372) 评论(0) 推荐(0) 编辑
2011年10月13日
摘要: C++嵌入python 把python的include/libs目录分别加到vc的include/lib directories中去。另外,由于python没有提供debug lib,体地说,就是没有提供python25_d.lib了。你可以自己编译python的源代码来得到python25_d.lib。所以,如果你想要在debug下运行程序的话,你要把pyconfig.h(在python25/include/目录下)的大概是在283行,把pragma comment(lib,"python32_d.lib")改成pragma comment(lib,"pytho 阅读全文
posted @ 2011-10-13 09:45 Jiang, X. 阅读(658) 评论(0) 推荐(0) 编辑