C/C++面试小知识点

1.static有什么用途。

解答:

  1. 在函数体中,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。
  2. 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所有函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。
  3. 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。也就是说,这个函数被限制在声明它的模块的本地范围内使用。

 

2.引用与指针有什么区别?

解答:

  1. 引用必须被初始化,指针不必。
  2. 引用初始化后不能被改变,指针可以改变所指的对象。
  3. 不存在指向空值的引用,但是存在指向空值的指针。

 

3.写出float x与“零值”比较的if语句。

if(x > 0.000001 && x < -0.000001)

 

4.C++中类与结构的唯一区别是:类(class)定义中默认情况下的成员是private的,而结构(struct)定义中默认情况下的成员是public的。

  struct和class的区别是struct定义的是值类型,值类型的实例在上分配内存;而class定义的是引用类型,引用类型的实例在上分配内存。

 

5. ::叫作用域区分符,指明一个函数属于哪个类或一个数据属于哪个类。::可以不跟类名,表示全局数据或全局函数(即非成员函数






本文转自夏雪冬日博客园博客,原文链接:http://www.cnblogs.com/heyonggang/p/3241428.html,如需转载请自行联系原作者


上一篇:Java生成对应字符串的MD5密码模块


下一篇:System.Xml.XmlException: 给定编码中的字符无效。 第 XX 行,位置 YY。