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

C/C++面试小知识点
微信公众号: 猿人谷
如果您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】
如果您希望与我交流互动,欢迎关注微信公众号
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

上一篇:[leetcode/lintcode 题解] 算法面试真题详解:特殊等价字符串组


下一篇:《MySQL DBA修炼之道》——2.2 官方版本的安装