03 2011 档案

摘要:之前写过一篇使用COM组件的3种方法的文章:启动COM组件的三种机制,其中后来补充了一个用免注册的方式使用进程外COM组件的方法,因为只是文字补充,没有实例,可能对于怎么实现大家不是很清楚,陆续收到一些同学的信,希望能给个例子。 所以干脆补充一篇,自己也恰好复习一下。步骤大概是这样的:我有一个com.exe的进程外com组件,暴露出一个ITestObject的接口。现在CustomizedWay.exe要调用这个com组件,但不希望通过注册表那一套。 虽然微软提供了registry-free的com组件机制,但目前只支持进程内COM组件(具体参考前文),但由于我们知道一个COM组件被调用的来龙 阅读全文
posted @ 2011-03-23 19:42 lzprgmr 阅读(9455) 评论(5) 推荐(0) 编辑
摘要:原题是这样的:在校园招聘的季节里,为了能让学生们更好地了解微软亚洲研究院各研究组的情况,HR部门计划为每一个研究组举办一次见面会,让各个研究组的员工能跟学生相互了解和交流(如图1-4所示)。已知有n位学生,他们分别对m个研究组中的若干个感兴趣。为了满足所有学生的要求,HR希望每个学生都能参加自己感兴趣的所有见面会。如果每个见面会的时间为t,那么,如何安排才能够使得所有见面会的总时间最短?最简单的办法,就是把m个研究组的见面会时间依次排开,那我们就要用m * t的总时间,我们有10多个研究小组,时间会拖得很长,能否进一步提高效率?此题的官方解法是将问题转化为一个已知的图的问题:即图的最少着色问题 阅读全文
posted @ 2011-03-19 14:45 lzprgmr 阅读(3477) 评论(5) 推荐(1) 编辑
摘要:有这么个问题:我们知道C++中有虚函数的类会有一个对应的虚函数表,那么纯虚类有虚表吗,如果有的话怎么调用纯虚函数?直觉上来讲,应该是有的。 可是既然是纯虚类,说明其对象永远不会被创建,那么维护个虚表貌似也不是很必要了。可以设计个程序来验证一下:class VirtualBase{public: VirtualBase() { // call pure virtual function through a non virtual function in base class's constructor non_virtual_fun(); } void non_virtual_fun() 阅读全文
posted @ 2011-03-07 21:56 lzprgmr 阅读(3285) 评论(7) 推荐(0) 编辑
摘要:看到有这么道算法题在博客园讨论,算法eaglet和邀月都已经设计出来了,花了点时间读了下,学到点东西顺便记录下来吧。题目是从1...n的数列中,找出总和为n的连续子数列。这里先设好算法中需要用到的关键变量:s:目标子数列的第一个元素k:目标子数列的长度那么目标子数列可以表示为(s, k)1. naive算法(n^2)最笨的,但是最容易的想到的方法,就是穷举所有的子数列:for s = 1 to n for k = 1 to n-s+1 if sum(s, k) == n output(s, k)复杂度为:n + (n-1) + (n-2) + (n-3).... = n(n-1)/2所以,其复 阅读全文
posted @ 2011-03-05 17:14 lzprgmr 阅读(2832) 评论(3) 推荐(1) 编辑
摘要:六年啦!!!要不是公司几个一起进来的同事有心,发邮件提醒了一下,还真没注意今天是在这家公司的六周年!记得六年前初来上海,和几个同学一起在公司附近租个房子,每天一起散步上班,散步下班,哦,好像还要去买菜,何其惬意!记得六年前初进公司,一上来就是3个月的培训,每天上午上课,下午做练习,一门课程结束还要考试,何其充实!六年间,从一个学生变成一个职业程序员,但还远称不上优秀;六年间,从学生变成丈夫,然后变成父亲,但似乎还不够成熟老练;十年磨一剑,4年后,再验我这把剑锋利几何 ! 阅读全文
posted @ 2011-03-01 22:18 lzprgmr 阅读(1107) 评论(6) 推荐(0) 编辑

黄将军