Redian新闻
>
说说我被面试到的c++题目吧
avatar
说说我被面试到的c++题目吧# JobHunting - 待字闺中
h*3
1
只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
。也许 C++ PRIMER看过。
1) 为啥要用c++;
2) encapsulate, polymophysim,inheritance的概念;
3)class的概念
4)default constructor是啥样的;
5) 写copy constructor要注意啥
6) 写 operator assignment的时候要注意啥
7)can constructor be virtual? why it can or can not? how about destructor.
8) what's the default functions of class
9) describe virtual table
10) what's the size of empty class
11) what's the difference of class and struct
12) what's the difference of reference & pointer
13) what's the difference of passing by reference & passing by value
14) when is the copy constructor called
15) type cast
16) template
17) deep copy & shallow copy
18) auto pointer
19) what's the differenc of new & malloc
20) what happens when new/malloc fails
21) what's the abstract class
22) what's the pure function?
23) how to print "hello world" before main()
24) inheritance 哪些能继承,哪些不能
25)class a array[50],怎么给这50个元素置初值,不能循环赋值,就是这个意思,你
可以动态分配
26)static
好像一般就是这些题;如果要白板或者笔试,我就不知道了。
avatar
m*t
2
what is 18? auto pointer?

【在 h*****3 的大作中提到】
: 只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
: 为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
: 。也许 C++ PRIMER看过。
: 1) 为啥要用c++;
: 2) encapsulate, polymophysim,inheritance的概念;
: 3)class的概念
: 4)default constructor是啥样的;
: 5) 写copy constructor要注意啥
: 6) 写 operator assignment的时候要注意啥
: 7)can constructor be virtual? why it can or can not? how about destructor.

avatar
r*m
3

C++ PRIMER里面有的, 17章,关于异常安全的内存分配什么的。。。

【在 m******t 的大作中提到】
: what is 18? auto pointer?
avatar
m*t
4
没读过c++ primer,汗! 好在俺不是c++ programmer :D

【在 r*******m 的大作中提到】
:
: C++ PRIMER里面有的, 17章,关于异常安全的内存分配什么的。。。

avatar
w*x
5
赞!!
avatar
s*0
6
This is a terrible way of judging a candidate.
A candidate can get all of these trivia questions correct and still have no
idea how to code.
Really strong candidates could get some of these wrong because they don't
remember random trivia.
avatar
s*9
7
多谢总结!
其实我面试遇到的问题也大多是这样,尤其是电话面试里面,都是这些基本问题

【在 h*****3 的大作中提到】
: 只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
: 为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
: 。也许 C++ PRIMER看过。
: 1) 为啥要用c++;
: 2) encapsulate, polymophysim,inheritance的概念;
: 3)class的概念
: 4)default constructor是啥样的;
: 5) 写copy constructor要注意啥
: 6) 写 operator assignment的时候要注意啥
: 7)can constructor be virtual? why it can or can not? how about destructor.

avatar
s*9
8
25题不太明白,应该怎么回答?
avatar
h*3
9
25题应该是class a里面只有一个int 的member data,其实就象给int array[50] 赋值
是一样的。
我反正在这题上死过。
其实仔细看看,都是最基础的题。
avatar
R*n
10
一般什么公司会问这些题目啊。
这不是考“茴”字的四种写法吗?难不成这不是一般programer的试题?
avatar
h*3
11
bloomberg 的recruiter, 比如q10之流吧。
基本上都是从他们那淘的题。c++的话,除了个别2个外,我觉得都挺基本的。
avatar
b*n
12
赞!
mark!

【在 h*****3 的大作中提到】
: 只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
: 为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
: 。也许 C++ PRIMER看过。
: 1) 为啥要用c++;
: 2) encapsulate, polymophysim,inheritance的概念;
: 3)class的概念
: 4)default constructor是啥样的;
: 5) 写copy constructor要注意啥
: 6) 写 operator assignment的时候要注意啥
: 7)can constructor be virtual? why it can or can not? how about destructor.

avatar
B*t
13
对于c++, 只会用STL的c programmer表示,曾经栽在Q11这个题上。。。。

【在 h*****3 的大作中提到】
: 只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
: 为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
: 。也许 C++ PRIMER看过。
: 1) 为啥要用c++;
: 2) encapsulate, polymophysim,inheritance的概念;
: 3)class的概念
: 4)default constructor是啥样的;
: 5) 写copy constructor要注意啥
: 6) 写 operator assignment的时候要注意啥
: 7)can constructor be virtual? why it can or can not? how about destructor.

avatar
d*a
14
malloc不能算c++的题目吧...
avatar
d*x
15
。。。
c++细节就是烦人的多啊
这和回不回的没关系,不知道这些你就是不能写c++,没办法

【在 R*********n 的大作中提到】
: 一般什么公司会问这些题目啊。
: 这不是考“茴”字的四种写法吗?难不成这不是一般programer的试题?

avatar
d*x
16
not true.
if you don't know these, you cannot write any correct c++ program, except
hello worlds.
that's how things work, for c++.

no

【在 s***0 的大作中提到】
: This is a terrible way of judging a candidate.
: A candidate can get all of these trivia questions correct and still have no
: idea how to code.
: Really strong candidates could get some of these wrong because they don't
: remember random trivia.

avatar
e*n
17
mark,Thanks for sharing~
avatar
r*u
18
我最近被问到的:
1. throw exception from constructor/destructor
2. What is the advantage of using exception over returning an error?
3. Why assignment operator returns a reference to the class?
4. const function
5. singleton, details, which should be private? How to initialize the
instance? How to make it thread-safe?
6. type cast, dynamic_cast, what happens when the base class is/is-not
polymorphism?
7. Derived class want to use base class interface but hides them from
outside (private inheritance?)
8. Two ways to restrict the name in a translation unit: static and un-named
namespace

【在 h*****3 的大作中提到】
: 只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
: 为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
: 。也许 C++ PRIMER看过。
: 1) 为啥要用c++;
: 2) encapsulate, polymophysim,inheritance的概念;
: 3)class的概念
: 4)default constructor是啥样的;
: 5) 写copy constructor要注意啥
: 6) 写 operator assignment的时候要注意啥
: 7)can constructor be virtual? why it can or can not? how about destructor.

avatar
n*6
19
好帖
avatar
f*m
20
第23题咋做?
23) how to print "hello world" before main()

【在 h*****3 的大作中提到】
: 只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
: 为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
: 。也许 C++ PRIMER看过。
: 1) 为啥要用c++;
: 2) encapsulate, polymophysim,inheritance的概念;
: 3)class的概念
: 4)default constructor是啥样的;
: 5) 写copy constructor要注意啥
: 6) 写 operator assignment的时候要注意啥
: 7)can constructor be virtual? why it can or can not? how about destructor.

avatar
f*m
21
第23题咋做?
23) how to print "hello world" before main()

【在 h*****3 的大作中提到】
: 只谈c++,不谈其他,比如stl,我自个觉得属于data structure的。当然也有一些我认
: 为很有可能被面试到的概念题。想到哪写到哪吧。很惭愧,大家提的那3本书都没看过
: 。也许 C++ PRIMER看过。
: 1) 为啥要用c++;
: 2) encapsulate, polymophysim,inheritance的概念;
: 3)class的概念
: 4)default constructor是啥样的;
: 5) 写copy constructor要注意啥
: 6) 写 operator assignment的时候要注意啥
: 7)can constructor be virtual? why it can or can not? how about destructor.

avatar
C*n
22
在main函数之外吧,虽然我不会C++。
顺便问一下,为什么C++需要搞的这么复杂?

【在 f*********m 的大作中提到】
: 第23题咋做?
: 23) how to print "hello world" before main()

avatar
O*d
23
std::auto_ptr

【在 m******t 的大作中提到】
: what is 18? auto pointer?
avatar
O*d
24
这些题,即使倒背如流,也不能肯定应试者的编码能力。
avatar
O*d
25
int printHelloWorld()
{
cout << "Hello World before main()" << endl;
return 0;
}
static int a = printHelloWorld();
void main(int argc, char** argv)
{
cout << "Hello World in the main() " << endl;
}
那个printHelloWorld就是在main()之前被call。
用这种方法,你可以在main()之前运行整个庞大的程序。

【在 f*********m 的大作中提到】
: 第23题咋做?
: 23) how to print "hello world" before main()

avatar
d*x
26
c++的一大部分复杂性来源于它对c的兼容和对系统底层的可操作性
有的时候c++的设计还会落入对效率依恋的陷阱,像上个世纪著名的ACE网络框架,就因
为一方面要OOP,要重用,一方面还想着不损失任何一点效率,搞得不伦不类,用了就
死。
另外,c++的泛型也迟迟没有规范化。作为一个多范式语言,它的c语言部分、template
和oop纠缠在一起,导致语言基础部分的复杂度呈n^2趋势上升。

【在 C******n 的大作中提到】
: 在main函数之外吧,虽然我不会C++。
: 顺便问一下,为什么C++需要搞的这么复杂?

avatar
O*d
27
在main()之前运行程序,理论上完全可以,但实际上,很多static变量的allocation顺
序是不确定的。 上边的static int a可能在其它static variable被生成之前就被call
, 如果printHelloWorld() 引用了其它static变量,可能会导致程序崩溃。 用main()
的好处是在main开始时,保证所有的static都已经生成。

【在 f*********m 的大作中提到】
: 第23题咋做?
: 23) how to print "hello world" before main()

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。