程序没有bug。。。。
要么是你的程序过于简单,要么只能说明你的程序已经很健壮了。
没有Bug的事情的确很难想象
re: 大家看一下这个问题 LOGOS 2006-06-10 21:42
程序关闭后,他所占用的内存空间会被系统回收。
不过我不能确定sListen是否会被关闭
re: 对list的查找的另一种作法 LOGOS 2006-06-10 17:02
很想跟你说,iterator是不稳定的对象,insert,delete或者其他一些操作,都会使得当前拥有的iterator失效。
re: fstream 和 中文路径 LOGOS 2006-06-09 23:25
做了更多的测试之后,发现ios::imbue方法失效了,要改变语言类别,只能通过locale::global实现。
但是问题却来了,设置global为中文后,cout却丧失了输出中文的能力。。。
re: fstream 和 中文路径 LOGOS 2006-06-09 22:21
听君一席话,胜读十年书。
以前用VS2003的时候,用fstream类一直可以很好支持中文文件名的,后来换了VS2005之后,建立中文文件名的文件,文件名字却一直是乱码(wfstream不在此例),内心十分疑惑。
看了你的贴,做了一下测试,所有问题都OK了。
const char * szData1 = oss.str().c_str();
szData1[0] == '\0';
不过既然是临时变量,你这么用
string & ss = oss.str();
const char * szData2 = ss.c_str();
不符合规范吧
re: 为什么main有多种格式? LOGOS 2006-06-07 17:50
你所说的调用规范,在将源代码编译成汇编形式后输出可以看出来。
main函数,静态函数,都在函数名之前加_,参数的调用是堆栈实现的,这一点所有的函数都是一致的。
re: 公司面试题目集合: LOGOS 2006-06-03 10:33
第三题够恶心的,程序讲究的是简单明了,可不是耍NB的。
a swap b.
a = a-b
b = a+b
a = b-a
over.
re: C++随笔 delete void * LOGOS 2006-06-02 08:29
delete void*不太实用吧,有什么人会做这种事情呢
嗯,在有继承的体系中,重载赋值操作符的确会发生很多灾难性的事情。
增加知识了。
有些理解了ios_binary的意义,添入文章中了。
re: 资源和资源管理类的设计问题 LOGOS 2006-05-28 11:05
我不太清楚你要干什么。。。
class Pen : public Resource;
class PenManager : public ResourceManager;
class Brush : public Resource;
class BrushManager : public ResourceManager;
ResourcePtr ResourceManager::create(...) 只是创建一个占位符,但是还没有load。
设计基类Resource的目的,是为了可以重用ResourceManager对资源的管理代码,不是给你用的。
至于对具体资源的引用和载入,是留给具体的ResourceManager来实现的。因此你要创建Pen,应该这么做:PenPtr p = PenManager::singleton().load(...)。而不是:PenPtr p = (PenPtr)ResourceManager::singleton().create(...)。
re: 初来乍到 LOGOS 2005-12-27 17:11
关于这个问题,我也差异了一下,不过编译成汇编后,就明白了:这些事情,是编译器决定的事情.
; Line 11
mov DWORD PTR _i$[ebp], 3
; Line 12
mov eax, DWORD PTR _i$[ebp]
add eax, DWORD PTR _i$[ebp]
add eax, DWORD PTR _i$[ebp]
mov DWORD PTR _sum$[ebp], eax
mov ecx, DWORD PTR _i$[ebp]
add ecx, 1
mov DWORD PTR _i$[ebp], ecx
mov edx, DWORD PTR _i$[ebp]
add edx, 1
mov DWORD PTR _i$[ebp], edx
mov eax, DWORD PTR _i$[ebp]
add eax, 1
mov DWORD PTR _i$[ebp], eax