2012年2月27日

摘要: 1,设计只能在堆上分配的类方法:将类的构造函数或者析构函数设置为protected(private会限制继承),迫使类对象在栈的构造时编译出错#include<iostream>usingnamespacestd;classOnlyHeap{public:OnlyHeap(){cout<<"construct"<<endl;}voiddistory()const{deletethis;}protected:~OnlyHeap(){cout<<"destruct"<<endl;}};intmain 阅读全文
posted @ 2012-02-27 15:53 Hibernate4 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 分析:这是Adobe 公司2007 年校园招聘的最新笔试题。这道题除了考察应聘者的C++ 基本功底外,还能考察反应能力,是一道很好的题目。在Java 中定义了关键字final ,被final 修饰的类不能被继承。但在C++ 中没有final 这个关键字,要实现这个要求还是需要花费一些精力。首先想到的是在C++ 中,子类的构造函数会自动调用父类的构造函数。同样,子类的析构函数也会自动调用父类的析构函数。要想一个类不能被继承,我们只要把它的构造函数和析构函数都定义为私有函数。那么当一个类试图从它那继承的时候,必然会由于试图调用构造函数、析构函数而导致编译错误。可是这个类的构造函数和析构函数都是私有 阅读全文
posted @ 2012-02-27 15:18 Hibernate4 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 问题:有101个数,为[1,100]之间的数,其中一个数是重复的,如何寻找这个重复的数,其时间复杂度和空间复杂度是多少?解:假设这101个数存放在Data[101]的数组中int Data[101];for (int i = 0 ; i< 100; i++){Data[i] = i;}Data[100] = 6;//假设是这些数据,并将最后一个设计为重复的数,当然也可以是其它数据,此处便于测试而已,没必要手动输入101个数,那会累死.一> 采用hash的方法,该方法可以申请一个100个字节,然后扫描这个101个数据,该方法需要的空间为O(N),时间复杂度为O(N)charBuff[ 阅读全文
posted @ 2012-02-27 15:07 Hibernate4 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 对于程序员来说,大部分公司都提供了多条职业发展方向:1. 技术型路线:编程高手、技术专家、架构师2. 管理型路线:项目经理、部门主管、总裁3. 复合型路线:技术总监、CTO4. 特长型路线:销售顾问、培训讲师这些路线,看起来很清晰明了。但对大部分26 – 32岁的程序员来说,如何发展,究竟该走哪条路,内心可能都存在彷徨与纠结。技术和管理,有如鱼和熊掌,不可兼得,这是寓言里的警示。但在现实工作中,鱼和熊掌往往必须兼顾。上面的4条路线中,不少职位可以进一步抽象为技术型领导。如何做一个好的技术型领导呢?下面是我的一些思考。按需服务当官的最高境界,是为人民服务。这句话看起来很虚,仔细想想是句至理名言。 阅读全文
posted @ 2012-02-27 13:47 Hibernate4 阅读(169) 评论(0) 推荐(0) 编辑

导航