随笔 - 13  文章 - 36  trackbacks - 0
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(2)

随笔档案

友情链接

搜索

  •  

最新评论

阅读排行榜

评论排行榜

re: 回顾编程十年 Alex-Lee 2012-04-09 08:30
都不过如此,身体健康、家庭和睦比啥都强,共勉。
太好了,正需要一个这个文章。一直没有找全,今天终于发现了。
re: 心情:日夜的混乱 Alex-Lee 2012-02-24 08:59
他们语法还是有很多相近的地方,要是敲C#和JAVA转,人都得疯了。
这个问题在C语言的很多书里头都说明白了,楼主自己看书不细心。就是个简单的指针问题。这个问题现在也很好查,典型的内存泄露,直接可以定位到代码行。
re: LotusEdit 1.00正式发布了~~ Alex-Lee 2012-02-17 09:10
@jacky
这个估计是没有数字签名引发的。

赞楼主
谢谢两位,就是有点笼统啊。。。
@空明流转
好像已经得罪人了。好人没做成,反倒惹了一身骚。一番好意,反倒,哎,罪过啊。还是下周做天义工,希望能洗刷自己的灵魂。
晕,自己打错字了:技术水平绝对高超(水平凑合)。这下估计得得罪不少人了 @_@
1、觉得自己技术好、能力强,收入不平衡,不要蒙在心里,不要怕,直接找领导谈吧,领导会给出他的看法的。就是谈崩了也没什么了不起,不是吗?
2、学习王江民吧。希望你知道他,并能深入的了解他。
3、我比你大两岁,工作比你多2年。曾经的211/985 学生,知名企业300-400人的研发队伍里头,技术水平绝对高超,人缘也好,领导也喜欢我。我的工资也不到10K,凭自己水平进百度、腾讯,弄个年薪20W不存在问题,可是我并不想去。生活中还有很多其他的值得自己去付出。一言难尽,找到自己喜欢的,让自己内心平静吧。
找到一个聪明、正值、有责任的人,当领导的好好培养他,这才是本事。一个优秀的人才,他不会随便跳槽的。就是这个面试者,他的这些言论,他也是学来的。至于其中当架构师的因由等,其实凭一个刚工作一年的哥们理解,有点期望太高。就是工作3-5年了,能理解这个吗?我相信很多人不理解。我工作5年了,我也理解不了架构师是啥东西。他要是一年就能理解了,那就不是你simon能给罩得住的人。既然simon好像很懂似的,为什么不培训他们?传播自己的见解?simon只不过是个傻子而已。simon问的陷阱问题,你是找一个能干活的,还是找一个能给发现陷阱的?不能发现陷阱就不聪明、不能干活?这个simon让我想起了网上流传的huawei人力资源没事整人玩。公司需要人力资源的业绩,业绩怎么来?找点整人的招,上呗!
re: 哈希结构 Alex-Lee 2009-10-22 18:54
@fcc
程序经过编译,没有什么问题。LM_MALLOC等是我写的一个内存分配封装函数,用于将所有的分配的内存地址使用单链表连接,在debug时,用于发现内存泄露问题,release时直接就是malloc。这是我实现的一个发现内存泄露的方法,灵感来源于《微软C编程精粹》。
HASH_TABLE是DATA_NODE*型。不好意思,在摘代码时把
typedef DATA_NODE* HASH_TABLE;
给忘掉了。谢谢提醒。

@李佳
@Vincent
受金融危机影响,今年工作不怎么忙。几乎将数据结构与算法忘得差不多了。这阵子看《算法导论(中文版)》潘金贵版。这本书讲得很好,有广度,也很有深度。数学基本忘得差不多了,其中关于数学论证时间复杂度的相关方面看得马马虎虎。哈希的开放地址法就没怎么看明白。谢谢大家的回复,有不对的地方,请大家指点。
re: 优先级队列 Alex-Lee 2009-10-18 18:25
@OwnWaterloo
写错了,呵呵,删除操作复杂度是O(lgn),这就改过来。谢谢。
re: Confused! 总结下心情 Alex-Lee 2009-04-15 16:51
@Sunshine Alike
陈梓瀚(vczh)是牛人,我们需要好好向他学习。我也是到现在这C++做界面真是郁闷得要死。咱两可以一起学习。
re: MFC下CSocket编程详解 Alex-Lee 2009-04-15 16:38
@Sunshine Alike
你先把unicode代码转换成多字节码后发送,接收时反过来。win api有multibytetowidechar,widechartomultibyte 两个函数,
C运行库有mbstowcs_s,wcstombs_s,具体可以参加msdn,或者网上搜索下。
@规划

你的机器可能有问题,可能是内存或者主板不稳定。我的机器3个游戏都跑了20+分钟没有问题。
确实好神奇啊。太强大了,神起!敬礼!
@陈梓瀚(vczh)

谢谢。shared_ptr使用delete的话,这样操作数组确实是问题。因此,对于设计数组类型的安全类,不能选用shared_ptr这么处理,这样看来,类设计时选用shared_ptr就是错误的。这样,终于搞明白了,为什么开始有人说这个设计糟糕透顶了。这个设计确实是有问题的。这次,印象深刻,彻底纠正了思想上的错误。
re: 面试中碰到的一个C++陷阱 Alex-Lee 2009-03-19 14:52
虽然博主没有说的非常的明白,但是这中讨论,让大家获益匪浅。还是不错哦。
@yindf
@陈梓瀚(vczh)

首先谢谢大家给的意见,果然高手如云。再次拜服。
两位意见不错,特别是构造函数那个错误比较大。这个确实是疏忽了。Exceptional c++中的NewCopy函数可以借用解决这个问题。

另外,异常安全有三个等级,依次是无资源泄露,状态一致,无异常抛出。一般能实现到状态一致是很不错了。
我谈谈自己设计的初衷。
1,像PIMP/COW实现太过复杂,啰嗦,不太喜欢。
2,使用shared_ptr是因为,智能指针本身就是为了防止原生指针资源泄露问题而设计的,这样就达到了无资源泄露的基本保证。就不需要处理原始指针问题。
因此,我的设计就是保证状态一致问题。也即是说,我设计这个类就是只要保证状态一致即可。如果确实使用char*这样的原生指针作为数据成员,那么这个类确实需要重新设计,这毋庸置疑。

3,equal()函数自己也有些疑惑,到底是只要两个字符串的值相等就行还是需要指向的是同一块字符串内存呢?或者myString对象本身就应该是同一个对象?4,关于维护length长度问题,由于使用shared_ptr实现,因此,就不需要维护 length成员。否则,如果使用shared_ptr与length,还需要维护两者之间的一致。当然,如果使用原生指针char*而不是使用shared_ptr,那么提供length成员变量是应该。
5,由于使用shared_ptr,因此就不需要引用计数了。shared_ptr本身是引用计数的实现。myString封装中没有其他的成员,不涉及占过多内存的问题。


这篇文章的发表,确实是让我学习到了不少东西,再次谢谢大家,希望大家多提意见,这样才能快速成长。
re: 面试中碰到的一个C++陷阱 Alex-Lee 2009-03-18 10:55
6.函数与虚函数
编译器为每个有虚函数的类都建立一个虚函数表(其大小不计算在类中),并为这个类安插一个指向虚函数表的指针,即每个有虚函数的类其大小至少为一个指针的大小4
class A{
public:
int a;
void Function();
};
class B{
public:
int a;
virtual void Function();
};
class C:public B{
public:
char b;
};
class D:public B{
public:
virtual void Function2();
};
class E{
public:
static void Function();
};
sizeof (A) = 4 (内含一个int,普通函数不占大小)
sizeof (B) = 8 (一个int ,一个虚函数表指针)
sizeof (C) =12 (一个int ,一个虚函数表指针,一个char ,再加上数据对齐)
sizeof (D) = 8 (一个int ,一个虚函数表指针,多个虚函数是放在一个表里的,所以虚函数表指针只要一个就行了)
sizeof (E) = 1 (static 函数不占大小,空类大小为1)


参考:http://hi.baidu.com/weiloujushi/blog/item/33f7f8b75d7a35f330add131.html

等会验证下
@wingfire

兄弟,能说清楚点吗?有好的资料推荐下?