01 2011 档案

摘要:wfstream f(data_file, wfstream::in); while( !f.eof() && f.good() ) { TCHAR sz[1024 * 128 ] = {0}; f.getline(sz, (sizeof(sz) / sizeof(wchar_t)) - 1); }两个说明,一是fstream.getline的第二个参数需要传入字符数,而非字节数,文档中没有明确说明,俺在这里栽过。二是,如果单行超过了缓冲,则循环会结束,因为f.good()返回false。总结:用getline的时候,一定要保证缓冲区够大,能够容纳各种可能的数据行。切记传入字符 阅读全文
posted @ 2011-01-29 21:05 小 楼 一 夜 听 春 雨 阅读(4517) 评论(0) 推荐(0) 编辑
摘要:在这个世界上,有数百万的人热衷于软件开发,他们有很多名字,如:软件工程师(Software Engineer),程序员(Programmer),编码人(Coder),开发人员(Developer)。经过一段时间后,这些人也许能够成为一个优秀的编码人员,他们会非常熟悉如何用计算机语言来完成自己的工作。但是,如果你要成为一个优秀的程序员,你还可以需要有几件事你需要注意,如果你能让下面十个条目成为你的习惯,那么你才能真正算得上是优秀程序员。 1. 学无止境。就算是你有了10年以上的程序员经历,你也得要使劲地学习,因为你在计算机这个充满一创造力的领域,每天都会有很多很多的新事物出现。你需要跟上时代的步 阅读全文
posted @ 2011-01-29 20:16 小 楼 一 夜 听 春 雨 阅读(379) 评论(0) 推荐(0) 编辑
摘要:toupper, tolower地球人都知道 C++ 的 string 没有 toupper ,好在这不是个大问题,因为我们有 STL 算法:string s("heLLo");transform(s.begin(), s.end(), s.begin(), toupper);cout << s << endl;transform(s.begin(), s.end(), s.begin(), tolower);cout << s << endl;当然,我知道很多人希望的是 s.to_upper() ,但是对于一个这么通用的 b 阅读全文
posted @ 2011-01-29 19:52 小 楼 一 夜 听 春 雨 阅读(2297) 评论(0) 推荐(0) 编辑
摘要:这只是个说明,你不按说明来办事也不会怎么样,svn照样工作得很好。 branches:分枝 当多个人合作(Sally和John)时,可能有这样的情况出现:John突然有个想法,跟原先的设计不太一致,可能是功能的添加或者日志格式的改进等等,总而言之,这个想法可能需要花一段时间来完成,而这个过程中,Jo 阅读全文
posted @ 2011-01-28 22:33 小 楼 一 夜 听 春 雨 阅读(649) 评论(0) 推荐(0) 编辑
摘要:includes:测试有序序列中是否包含另一个序列的全部元素。template<class inputIterator1, class inputIterator2>bool includes(inputIterator1 first1, inputIterator1 last1, inputIterator2 first2, inputIterator2 last2);template<class inputIterator1 , class inputIterator2, class Comp>bool includes(inputIterator1 first1, 阅读全文
posted @ 2011-01-28 22:15 小 楼 一 夜 听 春 雨 阅读(6491) 评论(1) 推荐(1) 编辑
摘要:对输入流操作:seekg()与tellg()对输出流操作:seekp()与tellp()下面以输入流函数为例介绍用法:seekg()是对输入文件定位,它有两个参数:第一个参数是偏移量,第二个参数是基地址。对于第一个参数,可以是正负数值,正的表示向后偏移,负的表示向前偏移。而第二个参数可以是:ios::beg:表示输入流的开始位置ios::cur:表示输入流的当前位置ios::end:表示输入流的结束位置tellg()函数不需要带参数,它返回当前定位指针的位置,也代表着输入流的大小。假设文件test。txt为以下内容:hello,my worldname:hehonghuadate:200909 阅读全文
posted @ 2011-01-28 20:24 小 楼 一 夜 听 春 雨 阅读(17444) 评论(0) 推荐(3) 编辑
摘要:#include <iostream>#include <cstdlib>using namespace std;const int MAX_PATH_ = 256;const int MAX_DRIVE = 16;const int MAX_DIR = 128;const int MAX_FILE_NAME = 128;const int MAX_EXT = 32;char szPath[MAX_PATH_];char szDrive[MAX_DRIVE];char szDIR[MAX_DIR];char szFName[MAX_FILE_NAME];char szE 阅读全文
posted @ 2011-01-28 10:39 小 楼 一 夜 听 春 雨 阅读(1485) 评论(0) 推荐(0) 编辑
摘要:#pragma oncetemplate <typename T>class PtrData{friend class CSmartPtr<T>;public:explicit PtrData( const T* pT):p_(pT) { count_ = 1; }~PtrData() { delete p_; count_ = 0; }void operator ++ () { ++count_; }void operator -- () { --count_; if (count_ == 0) { delete this; } }T* operator -> 阅读全文
posted @ 2011-01-27 23:02 小 楼 一 夜 听 春 雨 阅读(472) 评论(0) 推荐(0) 编辑
摘要:从http://code.google.com/p/protobuf/上下载protobuf-2.3.0,解压后,打开vsprojects文件夹,然后用VS2005打开protobuf开始编译,然后生成libprotobuf,libprotobuf-lite,libprotoc三个lib,同时生成了 阅读全文
posted @ 2011-01-27 21:08 小 楼 一 夜 听 春 雨 阅读(1952) 评论(0) 推荐(0) 编辑
摘要:在应用程序中,往往为了释放内存等,使用一些函数,其实,对于内存操作函数要谨慎使用,比如大家常常想到的 SetProcessWorkingSetSize,其实对于windows来说,系统会自动在程序闲置时(如程序被最小化)释放内存的,自己用内存释放 时,往往会造成一些莫名的内存错误,造成自己的应用程序及系统不稳定。具体原理有人已经写得很清楚了,以下为转帖的几个帖子,供参考:=============================================1、将物理内存的占用挪到虚拟内存里-----揭密篇将物理内存的占用挪到虚拟内存里-----揭密篇 参见 VB(或任意程序)将物理内存的占 阅读全文
posted @ 2011-01-26 16:55 小 楼 一 夜 听 春 雨 阅读(17504) 评论(3) 推荐(2) 编辑
摘要:如何高效地管理时间 现代人的生活节奏越来越快,压力也越来越大。经常会听到白领人士抱怨一个星期有三到四天的时间在加班,没有时间锻炼身体,身体经常处在一种透支的状态;也有人抱怨,虽然现在的职位已经到了中层管理层,但是没有安全感,因为知识的更新速度太快。 其实大家都感觉到时间是个瓶颈,每天列了一大堆的计划 阅读全文
posted @ 2011-01-26 10:35 小 楼 一 夜 听 春 雨 阅读(476) 评论(0) 推荐(0) 编辑
摘要:持久对象(persistent objects)广泛应用于游戏、分布式数据库系统、多媒体以及图形应用程序中。目前C++并不直接支持持久性(persistence)(但有一些在C++未来版本中添加持久性和反射(reflection)的建议)。持久对象可以在创建它的程序的作用域之外保持自身状态。把对象写入一个文件并在以后重建之,或者把对象传送到一台远程机器,就是这样的例子。对持久性的支持并不象第一眼看上去那样简单,同一对象的大小和内存布局在不同的平台上可能并不相同,而不同的字节次序(byte ordering),或称为endian-ness,使事情更加复杂化。在下文中我将讨论如何实现持久性,而无. 阅读全文
posted @ 2011-01-21 00:25 小 楼 一 夜 听 春 雨 阅读(648) 评论(0) 推荐(0) 编辑
摘要:boost::shared_ptr的win32实现中,没有使用类似mutex机制却能够实现线程安全。 线程安全主要就是保证引用计数机制的线程安全 win32实现中关键在于使用了 BOOST_INTERLOCKED_DECREMENT以及BOOST_INTERLOCKED_INCREMENT 在int 阅读全文
posted @ 2011-01-19 11:36 小 楼 一 夜 听 春 雨 阅读(2709) 评论(0) 推荐(0) 编辑
摘要:#include <iostream>#include <fstream>#include <algorithm>#include <cassert>#include <numeric>#include <string>using namespace std;int main(){vector<int> vec_int;for (int i=0; i<10; i++)vec_int.push_back(i);partial_sum(vec_int.begin(), vec_int.end(), vec_i 阅读全文
posted @ 2011-01-17 23:54 小 楼 一 夜 听 春 雨 阅读(1290) 评论(0) 推荐(0) 编辑
摘要:原著:Radu Privantu 翻译:pAnic 2005年5月11日 原文出处:http://www.devmaster.net/articles/building-mmorpg ------------------------------------------------------------------- 译者序:这是一篇讲解如何开发一款MMORPG的入门文章,作者本人也是一款游戏的开发者,文中的内容源于实践,有很高的参考价值。很多人都想拥有自己的游戏,这篇文章对那些想自己开发游戏的人来说可能是一纸福音,也可能是一盆冷水。无论如何,开发游戏都不是一件简单的事情... 阅读全文
posted @ 2011-01-08 22:28 小 楼 一 夜 听 春 雨 阅读(356) 评论(0) 推荐(1) 编辑
摘要:以前是一个人闷头写代码。工作久了,发现同行们的代码基本都不能看,当然不少还来自大公司。因此大公司的代码也基本不能看。在学校里就听说过许多同学的憧憬,要进什么大公司学技术,现在看来真是好笑,能学到才怪呢。游戏行业我还蛮清楚,暴雪不知道,反正一直很崇拜,代码应该牛逼,看招聘就能看出来,不懂游戏的别来这里玩。牛逼。其他公司,包括所有的日本公司+中国公司代码都不堪入目。1.首先我觉得写代码之前要了解自己,所为有所为,有所不为,并不是所有优雅的东西都是每个人都能写出来的。如果人人都能写出美的东西,那也不能称之为美了,大便之所以不香是因为你随便就能得到。因此有时候一味去追求好的设计,无异于搬起石头砸自己脚 阅读全文
posted @ 2011-01-08 21:58 小 楼 一 夜 听 春 雨 阅读(338) 评论(0) 推荐(0) 编辑
摘要:ios::in和ios::out分别表示读打开和写打开 ios::app表示在文件末尾追加 ios::ate:打开文件之后令读写位置移至文件尾端(at end)ios::ate是打开文件时定位到文件末尾 ios::trunc:将先前的文件内容移除(Remove) 阅读全文
posted @ 2011-01-04 09:56 小 楼 一 夜 听 春 雨 阅读(395) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示