一些名公司的笔试题.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

一些名公司的笔试题(转载)

C与C++

static的作用(中天联科)

static变量存放于静态存储区,static全局变量和static函数仅在当前文件下可见,static局部变量仅能有当前函数控制,且仅初始化一次,默认初始化为0。static成员变量仅有一份实例,需在类外初始化,在类实例化前就能使用,static成员函数在类实例化前就能使用,仅能访问类的静态成员和静态成员函数。

sizeof:

inta[2][3];sizeof(*(a+1));//123virtual关键字的使用

申明虚函数以实现动态绑定,即多台;

申明某个类继承虚基类,使公共父类只有一个实例

classA{};classB:virtualpublicA{};classC:virtualpublicA{};classD:publicB,publicC{};

声明纯虚函数,(抽象类,是无法初始化的),此函数必须在继承类中实现。

singleton的实现(火花软件)classSingleton{

public:

staticSingleton*GetInstance(){if(instance==NULL){

instance=newSingleton();

}

returninstance;

}

protected:

Singleton(){

coutconstructsingletonendl;

}

~Singleton(){

}

private:

staticSingleton*instance;

};

union的用法(腾讯面试)

c++中的virtual如何实现多态(微策略)

利用虚函数表。每个类都有一张虚函数表,记录类中所有虚函数的函数指针,每个对象都有一个额外的虚指针vptr,指向这张虚函数表,当通过指向对象的指针调用虚函数时,根据vptr调用相应的函数版本实现动态绑定。

堆溢出与栈溢出危害的区别(极光互动)

栈顶指针指向未知区域,可能造成系统崩溃,不仅仅指错数据而已。

函数调用的具体过程(汇编,栈)(极光互动)

使用stl的不妥之处(极光互动)

内存碎片,自己处理内存只膨胀不收缩

栈中临时变量的具体情况,什么叫自动销毁,自动清除(极光互动)

什么情况下自己实现链表(极光互动)

windows下C++多线程网络编程(极光互动)

const的用法

constchar*constch=a;*前面的const指明指针指向的内容不可改变,*后面的const指明指针本身不能变

参数用const修饰表明该变量不能变,返回值为const表明返回的值类型为const(一般用于操作符重载),与普通const相同

const修饰成员函数放在函数声明后面,表明不能修改数据成员Af;constAe=f;//这样e只能访问f的const成员函数

构造函数,析构函数,拷贝构造函数

子类会首先调用父类的构造函数,最后调用父类的析构函数。拷贝构造函数是为实现深拷贝,即实现动态内存的拷贝和释放。构造函数不能直接调用。构造函数会默认先将类的成员对象初始化。函数调用结束时会自动析构对象。

内部类(汤森路透机试)

内部类对象默认初始化与普通成员对象一样,由构造函数在最开始进行。内部类的访问需用外部类标号。

函数指针注意加括号

intfun1(inta){coutaendl;returna;};

intfun2(inta){cout100+aendl;return100+a;};int(*ptr[2])(int);

ptr[0]=fun1;ptr[1]=fun2;

(*(ptr[0]))(5);//orptr[0](5)(*(ptr[1]))(6);

a+++b(联想研究院)

inta=5;intb=10;intc=a+++b;//a=6b=10c=1518int*a[10]与int(*a)[10]的区别(联想研究院)

前者为指针数组,后者为指向数组的指针。前者sizeof(a)为10后者sizeof(a)为4

C的几个库函数的实现memcpystrcpyatoimemset

memcpy函数的内部具体实现内存,越详细越好。(marvell电面)页表将虚拟地址转换成物理地址,TLB命中,缓存,内存,虚存。21virtual析构函数的作用(marvell电面)

C++有明确的说法是,一个类作为基类时,如果其析构函数不声明成virtual,那么指向派生类的基类指针在析构时的行为不可知。

t

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档