C++面试的错误收集

  1. Struct 和class 的区别。

答:struct是一种结构体类型的标志,它和C++中的Class很相似。

  C++中两者的唯一区别在于:Class定义中默认情况下的成员都是私有的,而结构Struct                  定义中默认情况下的成员都是公有的。

  在C中,结构中不能有成员函数,而在C++中可以有成员函数.

 

  1. 是不是一个父类写了一个virtual 函数,如果子类覆盖它的函数不加virtual ,也能实现多态?

答:virtual修饰符会被隐形继承的。private 也被继承,只是派生类没有访问权限而已。virtual可加可不加。子类的空间里有父类的所有变量(static除外)。同一个函数只存在一个实体(inline除外)。子类覆盖它的函数不加virtual ,也能实现多态。在子类的空间里,有父类的私有变量。私有变量不能直接访问。

13. *p++ 自增p 还是p 所指向的变量?

答:

后缀++ 和– 操作符本质上比前缀一目操作的优先级高, 因此*p++ 和*(p++) 等价, 它自增p 并返回p 自增之前所指向的值。

要自增p 指向的值, 使用(*p)++, 如果副作用的顺序无关紧要也可以使用++*p。

14. #pragma 是什么, 有什么用?

答:

#pragam 指令提供了一种单一的明确定义的 “救生舱”, 可以用作各种 (不可移植的) 实现相关的控制和扩展:

源码表控制、结构压缩、警告去除 (就像 lint 的老 /* NOTREACHED */注释), 等等

15.“#pragma once” 是什么意思?我在一些头文件中看到了它。

答:

这是某些预处理器实现的扩展用于使头文件自我识别; 它跟#ifndef技巧等价, 不过移植性差些。

16. 进程间通信的方式有?

答:

进程间通信的方式有 共享内存, 管道 ,Socket ,消息队列 , DDE等




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值