word版,c经典面试题.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
完整word版,c++经典面试题 完整word版,c++经典面试题 完整word版,c++经典面试题 1. C 和 C++ 中 struct 有什么差异? C 语言中: Struct 是用户自定义数据种类(UDT ) C++ 语言中: Struct 是抽象数据种类( ADT ),支持成员函数的定义。 在 C++ 中,struct 的成员的默认接见说明符为public ,class 为 private 。 c 中的 struct 是没有权限设置的。 C++ 中 struct 增添了接见权限 ,且能够和类相同有成员函数。 C++ 中的 struct 等同于 class, 不过 class 默认成员权限是 private, 而 struct 默认成员权限是 public 。 1 C++ 中的 struct 近似于 class ,有变量,有结构函数、虚函数等,有 继承,多态等类的特色; 2 2 C 中的 struct只有变量,不可以有函数,可是能够有函数指针 C++ 中的 struct 和 class 有什么差异? 在 C++ 中,二者差异不大,可是有 2 个主要的差异 1.继承权限: struct 默认是 public 继承; class 默认是 private继承 1 2.接见权限: struct 默认是 public 接见; class 默认是 private接见 3.怎样判断一段程序是由 C 编译程序仍是由 C++ 编译程序编译的? 【标准答案】 #ifdef __cplusplus cout “ c++; #else coutc; #endif (这个从前还真没注意过,涨姿势了。。。) C 和 C++ 有什么不一样 ? 【参照答案】 从体制上: c 是面向过程的(但c 也能够编写面向对象的程序); 2 c++ 是面向对象的,供给了类。可是, c++ 编写面向对象的程序比 c 容 易。 从合用的方向: c 合适要求代码体积小的, 效率高的场合, 如嵌入式; c++ 合适更上层的, 复杂的 ; linux 核心大多半是 c 写的,因为它是系统 软件,效率要求极高。 从名称上也能够看出, c++ 比 c 多了 + ,说明 c++ 是 c 的超集;那为何不叫 c+ 而叫 c++ 呢,是因为 c++ 比 c 来说扩大的东西太多了, 所以就在 c 后边放上两个 + ;于是就成了 c++ 。 C 语言是结构化编程语言, C++ 是面向对象编程语言。 C++ 重视于对 象而不是过程,重视于类的设计而不是逻辑的设计。 对于这个问题,个人感觉《Effective C++》上边第一条说的很好, View C++ as a federation of languages.把 C++ 当成一个语言联邦。 C++ 由四部分构成 1 c 语言部分; 3 2面向对象部分,包含封装、继承、多态这些C 语言所没有的特征; 3泛型编程部分,大多半类、函数要考虑到把它设计成模板,方便复 用; 4 STL 库,里面封装了大批的优异模板,是3中内容的集成, 学 会使用它们能够让代码更高效。自然,最好去深入认识 STL 源码,那样 会对 C++ 有更深的理解。 “引用 ”与指针的差异是什么?【参照答案】 指针经过某个指针变量指向一个对象后,对它所指向的变量间接操作。 程序中使用指针,程序的可读性差;而引用自己就是目标变量的又名,对引用的操作就是对目标变量的操作。 在另一本 C++ 著作《More Effective C++》里,第一条就是阐述point 和 reference 的差异总结一下 , 1指针是一个储存地点的变量,而引用是一个变量的又名。所以在一 个函数中,传引用要比传指针速度更快。 4 2指针能够指向一个空值,而引用一定初始化。指针能够以下形式出 现 [cpp] view plaincopy 1. int*p; 是合法但不合理的 ( 相当于是一个野指针 ) 。 能够申明一个指向空值的指针 [cpp] view plaincopy 1. int*p=null 而引用不可以 [cpp] view plaincopy 1. intr; 是错误的 引用一定初始化为一个变量的又名,如 [cpp] view plain copy 1. int a=5; 2. int r=a; 3 也是因为 2 的特征,指针在使用前要判断能否为空,而引用必然不为空 ( 不然会报错 ) ,所以不用判断。 4指针能够改正指向的内存地点, 而引用是和变量绑定的, 不可以改正。 5 5在运算符重载过程中,往常返回一个引用常常比返回一个指针更好, 使用指针易惹起语义上的歧义。 6. class A { virtual void func1(); void func2(); } ;

文档评论(0)

137****9542 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档