金山的C++面试题

来源:互联网 发布:linux高性能服务器编程 编辑:程序博客网 时间:2024/04/27 01:14

  在CSDN看到了几个金山C++的面试题,自己也做了下,感觉不错,记录如下:

  1.在程序设计和运行中,有时候我们希望一个类有且只有一个实例,请用C++语言写一个这样的示例类。

  我的见解:这就是一个C++单例模式的例子,具体可以参考我这篇文章“C++单件模式实现代码详解”

  2. 请实现一个具有以下功能的函数,但不能使用任何形式条件判断、分支、跳转等类型的语句或指令:
int sign(INT32 x) {
  if (x > 0) return 1;
  else if (x == 0) return 0;
  else return -1;
}

  我的见解:觉得这个题目真没难度,移位操作就好了。右移31位后返回值就好了,正数高位为0,负数为1,判0也很容易,留个悬念,哈~

  5. 有一段英文文档(只由字母和空格组成),请实现一个函数,把这篇文档中指定的单词替换为目标单词。

  我的见解:token空格后,试用<string,string>的map结构就差不多了~


超越C++原创文章,转载请注明来源并保留原文链接

本文链接:http://www.beyondc.cn/jinshans-c-face-questions.html