范文无忧网面试笔试笔试回答

MTK笔试总结

12月06日 编辑 fanwen51.com

[公选领导笔试案例题]想要参选领导选拔的同志们,下面这一则笔试案例题是与公选有关的,本站建议大家了解一下。 案例: 日前,某地人民法院开庭审理了一起特殊的行政诉讼案:由于对政府部门数次改变小区的...+阅读

小编我很久没在本站上发表文章张了,下面就让我来跟大家谈谈我的MTK笔试心得吧!

今年年要开始找工作了,本着积累经验的目的,跑去做了下MTK的笔试题,笔试的内容主要是C++。

因为开发中一直使用C++,而且对C++里的高级特性:面向对象,模板等都比较熟悉,还没事喜欢研究下STL,BOOST,所以对自己的C++水平比较自信,因此事先也没做任何准备,就直接去笔试了。本来笔试完了后觉得题目蛮简单的,但是本着认真学习的态度回来后把题目都上机试验了下,结果一下就悲剧了,错的体无完服啊。

总结了一下:

1。认真对待,不要小看了笔试题目:做题的时候心想这些笔试题目都很简单啊,很多题目都是扫了一眼就立即写出了答案,结果回来后才发现这些题目都设置了陷阱,让你掉进去就出不来了。

2。C++基础不够扎实。枉我还一天到晚的研究C++的高级特性,结果很多基础的知识却都是一知半解。

特将此次笔试的一些心得和体会记录于此,好提醒自己。下面主要分析几个我做错的题目。题目并非与原题完全一致。

题目一:

int a=10,b=6;

couta+b a++ b++;

请说出上述语句的执行结果。

很多人看过这段代码后估计都会直接就写上了 16 10 6 这样的结果吧,但上机实验的输出结果是: 18 10 6

为什么会出现这样的结果,下面是我的分析过程,如果有不对的地方请大家指正。

为了跟踪代码的执行步骤,我设计了一个类X,这个类是对int的模拟,行为方面与int基本一致,除了会打印出一些帮助我们理解的信息,代码如下:

class X

{

public:

X(){coutdefault constructendl;}

X(int a):i(a){ coutconstruct iendl;}

~X(){ coutdesconstruct iendl;}

X(const X x):i(x.i)

{

coutcopy construct iendl;

}

X operator++()

{

coutoperator ++(pre) iendl;

++i;

return *this;

}

const X operator++(int)

{

coutoperator ++(post) iendl;

X x(*this);

++i;

return x;

}

X operator=(int m)

{

coutoperator =(int)endl;

i = m;

return *this;

}

X operator=(const X x)

{

coutoperator =(X)endl;

i=x.i;

return *this;

}

/

friend ostream operator(ostream os,const X x)

{

osx.i;

return os;

}

friend X operator+(const X a,const X b)

{

coutoperator +endl;

return X(a.i+b.i);

}

public:

int i;

};

然后执行以下代码:

X a(10),b(6);

coutsum: a+b a:a++ b:b++endl;

使用GCC4。5编译后,代码的执行结果如下:

construct 10

construct 6

operator ++(post) 6

copy construct 6

operator ++(post) 10

copy construct 10

operator +

construct 18

sum:18 a:10 b:6

desconstruct 18

desconstruct 10

desconstruct 6

desconstruct 7

desconstruct 11

我们来简单分析下这个执行过程:

construct 10

construct 6 //这两行输出对应于 X a(10),b(6);

operator ++(post) 6

copy construct 6 //表明首先执行了 coutsum: a+b a:a++ b:b++endl;这句中的 b++这个表达式,

b++这个表达式返回了一个值为6的临时对象,而b本身则变成了7。

operator ++(post) 10

copy construct 10 //这句的分析同上

operator +

construct 18 对应于表达式 a+b ,可以看到,此时的a和b已经变成了11和7。表达式返回了一个值为18的临时对象。

sum:18 a:10 b:6 //输出的结果,从结果可以看出,实际上打印出的值分别为 a+b,a++和b++三个表达式所返回的临时变量。

desconstruct 18 //a+b 表达式返回的临时变量的析构

desconstruct 10 //a++ 表达式返回的临时变量的析构

desconstruct 6 //b++表达式返回的临时变量的析构

desconstruct 7 //变量a 的析构

desconstruct 11 //变量b的析构

真相大白了。为什么编译器会这样来编译这个表达式呢?

下面2楼的夜风同学给出了正确答案。。为了不误导后面的同学,特此编辑掉。。

上述实验的环境均为GCC4。5 据同学说VS2010执行的结果在DEBUG下和RELEASE下居然分别为:16 10 6 和18 10 6,不过我没有去验证过,有兴趣的同学可以去验证并分析一下。

做这样一道题还是让我收获很多,巩固了C++的基础。

今天就写道这里,后面有时间会陆续放出对其他陷阱题目的分析。

延伸阅读:

绿盟科技笔试经验下面分享两位网友到绿盟科技笔试的经历 网友一:笔试绿盟受挫 被绿盟鄙视是肯定的了,卷子答的太差,考完了,心中只有四个字学艺不精啊! 12点开始,2点结束,卷子题量很大,好像一共27、8...

艾莱依面试经验总结跟大家总结一下我到艾莱依集团复试的经历。 其实,当天过来复试的人中有好多的丽水人。一半是社会上工作了好几年的,一半是学生。面试第一关自我介绍等等等,我是第三个。一轮下...

民生证券笔试经验总结一下我参加民生证券的笔试所考的题型吧!或许这对以后的求职者会有帮助。 民生证券的笔试是在中财主教学楼考的,主要分为两部分,第一部分是行测,历时一小时;第二部分为专业笔...

计算机类笔试经验下面是计算机考试类的笔经介绍 首先是要有充分的准备,我知道有很多人报考了公务员,教师招聘等考试,他们只是抱着一种试试看的心理,没怎么复习。在这里我想告诉真正想考试的人:不...

2011年质检员笔试题目以下是2011年质检员笔试题目,现分享给大家练习练习。一章 概述 1、国家验收标准:一个标准、16个规范(P9+建筑节能验收规范) 2、省验收及控制标准:住宅工程控制标准、建筑节能验收...

安信证券笔试心得下面跟大家分享的是一位网友的安信证券笔试心得。 事先在网上看到该公司只招硕博,貌似要求很高,宣讲会的时候,一个典型国企中年男士,不停地讲一些很没条理的东西,试图说服大家加...

民生证券笔试心得以下是小编参加完民生证券笔试总结出的笔试题型!分享给大家了解一下,或许这对以后的求职者会有帮助。 民生证券的笔试是在中财主教学楼考的,主要分为两部分,第一部分是行测,历...

面试时如何总结自己的不足在面试的过程中,有时总不免会遇到让被面试者总结自己不足的问题。随着主持面试次数的增加,被试对自己的不足的总结越来越趋同了,这里我总结到的四大经典不足。 1、自己太追求完...

浪潮软件研发笔试今天下午2点小编我到浪潮去参加了笔试笔试前填写了一份浪潮的职位申请表,很多与我简历中的内容都重复,所以填写的有些不耐烦,后面几项还有点意思。 是否可以外驻:可以 是否服从...

推荐阅读
图文推荐
栏目列表