|
|
北京爱立信的面试题9 e) m' Z4 |. V- g; z- H
2 s% ^: X% ]' c% c4 U; R' _7 k, d4 l0 @$ @% { `
北京爱立信的面试题9 m0 E9 S( D0 p- H6 Y
: O" |& }/ J* R! W- g笔试题:. X, c4 h" i/ E( o7 y. G
& j/ h' X1 e4 N, E9 W: A' N
a, struct与class区别
$ F! i4 C5 Y% C9 }5 F4 ]" eb, heap与stack的区别,以及标识一下一段程度中一些变量分配在哪里??(局部变量,全局变量,静态变量,常量,malloc出来的变量)' N+ i# Q7 G2 D+ H% O0 y
c, 将一个单向链表反转过来的函数9 U# o! e- ^& C+ s$ t9 g6 r5 X
d, 一个string类,没有的拷贝构造函数,然后一段代码中实现了String a=b的拷贝,问程序会发生什么??
/ H+ t( d" l6 Ce, 设计题:设计一个阅读系统,其中有许多文件,并且有的文件大小超过1G,而内存容量是2G,内存可容许的最大可导入文件大小不能超过1G,请问如何设计这样一个系统??: d$ T* l* w5 n# m. k8 M( |
f, 实现一个iota的函数?
! O" L# ?1 J+ K: @g, 在C++中调用c程序为什么需要C extern关键字
$ f0 E( o$ y* S8 g- o
8 [; d$ l5 f" T! Z4 ]( v2 R工程师面谈:/ ]! E3 ?0 B4 A- v8 W$ j
6 y4 K @$ ?. u2 o6 Z2 ?. {5 ~
a, scpt中的关联需要什么参数
. @" i- J7 ~6 {5 ^6 x3 @6 |- m4 Ib,+ t( ~% B& v# E2 q1 l& v, F' ^
1 ]; Q) [+ S/ ], n w* `1 H
经理面谈:/ ]/ p I6 e, U0 X" Q
a, 一个字典系统,有1000000个单词,找出那些字母一样,只是顺序不一样的单词,分类整理(例如:pot, opt, pto, etc)
) ~& ?3 @: V/ _- ~9 Mb,有着良好的背景,技术思路非常不错,但可能最近两年在做测试,对编程可能稍显生疏
3 T' \7 ]8 j7 ?- M& ^4 D' @& O" U- k5 Q
英语:
1 e6 Z9 @8 S& H9 O- p- m4 M0 W- o3 K. E6 a+ i& N& G7 H& Z9 a
a, 说说你的缺点???
6 y$ y* R8 U& B; Q/ n( hb, 说说你的优点???7 ?2 ]" t' k$ y/ Z
c, 说说你认为对你印象最深刻的事?0 Z" Y9 t+ Q7 y* o& R7 Y \9 E" m8 A
d, 为什么想换工作??
# h d+ I4 @. \9 S% Oe, 比较一下你了解的五个城市(宜昌,荆州,武汉,北京,青岛),你更偏向于哪个城市??& v7 u# z" I+ N" R: l: W4 q
2 @8 B# ?; r* |4 s/ ]部分答案:
* M) h( {% g( v G; y. c& P1 k' i) p) j5 m' s- n
1, 关键字 extern "C" 说明
# Y, X2 E6 F# A: q" f
# @! v/ D* f. c! K8 G==> C与C++对函数名的处理是不一样的,在C++中会对函数名编译时加一些修饰符用以区分函数的重载等问题, l& `7 p, i5 W9 `
==> C编译的函数库,C++中声明与调用时,应指定extern "C"关键字,这样保证C++在编译时仍然采用C的方式编译函数名
6 t: j; x& ~$ z/ `; t( q$ I==> C++链接时就能找到正确的C函数
7 ]9 q( C' v+ P* A) X==> extern "C" void f(int a,char b); ---引用C函数( ~0 Y% g; ?$ g4 u" B6 `& M
==> extern "C" { #include "cExample.h"} ---引用C文件名
# _* c3 j+ R/ S- F==> extern "C" int a; ---引用C全局变量
# q2 o0 W; S9 D# x* M! D1 {0 s" E; z( V& R
2, 关键字 struct 与 class 区别:(被问到的题目用绿色标示出来)2 g0 X3 F) x2 w! x6 k
==> 默认继承权限。class的默认继承关系是private,struct的是public
S- f8 i5 ]! v! x# B' Z W8 e==> 默认成员权限。class中的默认成员(变量与函数)权限都是private, struct的是public
8 H% [9 Z$ b+ u" N# [==> 模板中struct不能用作模板* `. T' Z a% y( F# a9 {% a" ~
/ b% I6 U8 F7 {0 K* Z( a' j* D3, 指针与引用的区别:0 J5 T6 B& y1 f X5 Z
==> 指针可以被重新赋值以指向另一个不同的对象。但是引用则总是指向在初始化时被指定的对象,以后不能改变5 V$ R# c' o$ v v& ?; v6 y) W
==> 指针是一个变量,编译时会分配内存区域。引用只是一个别名,不分配内存区域
: Z5 g. g8 K! b4 H==> sizeof(指针)通常为4, sizeof(引用)为对象地址空间2 H A( x: K, ]- n% g% r2 M
# P7 L: a+ T. N) r4, socket中的recv/send阻塞与非阻塞区别2 l, e9 Q9 u# _* Y
==> recv/send 参数中都会指定length
6 S, }- g+ O$ z- K==> 阻塞式send: 拷到发送缓冲区,如果缓冲区满,则需等待直到指定长度的数据发送到缓冲区
9 D, a0 a7 p& }% c8 Z3 ]" q==> 非阻塞式send: 一直拷贝,如果缓冲区满,也立即返回,并不等待。
a0 I- ~ X- P$ Z) u; L Z- |==> 阻塞式recv: 直到接到到指定长度的数据为止7 ^% e z5 @4 d# b9 Y: B
==> 非阻塞式recv: 立即返回,不管缓冲区里是否有数据,或者数据是否够指定长度,都立即返回) S* x$ t) v0 O) \
9 ]$ a. _- k+ z# ]- Z& U/ I5, main函数之前还有代码吗?
$ E2 R" X$ ~! {$ M: T, D% C. b
0 e3 N; s- m/ h6 |# \7 Z% Mmain函数之前还有一些全局变量的初始化,对象的构造,main函数退出后会有全局变量的析构等8 s# ?% f I9 W2 b& t' M2 b: _4 u, |
9 _& ^3 ~9 q7 F8 P' V; ]2 X' s8 n
" Q Y; H9 v* e. r; X: h, M* K爱立信面经:topic问题
$ x a5 V' x. O) w; _http://bbs.aftjob.com/thread-289744-1-1.html) U- z9 H* _- |# h9 y, [8 P
爱立信最新面经,分享给大家,希望有用!
) g4 I+ x( N- O7 U( E+ ]& ahttp://bbs.aftjob.com/thread-781023-1-1.html
- e: c T8 u* \; p7 G" t2 q爱立信2010年实习面试
4 [7 t7 k" C/ Q! { o1 Ghttp://bbs.aftjob.com/thread-610327-1-1.html
3 @6 n' Z7 e; i) L* x% x
2 P$ J- x. J% n( ^( c爱立信俱乐部:http://bbs.aftjob.com/group-298-1.html |
|