C++面试问题

定义和声明的区别

Union,Struct,Class 的异同点

深拷贝 vs 浅拷贝

new 和 malloc 的区别

既然有了malloc/free,C++中为什么还需 要new/delete呢?

被free回收的内存是立即返还给操作系统吗?

C++11 新特性:

delete与 delete [] 区别

子类析构时要调用父类的析构函数吗?

为 什么父类析构函数要定义为虚函数?

纯虚函数

静态绑定和动态绑定的介绍

虚函数表、虚函数指针是什么?

虚函数的实现机制(内存分布)

模板的用法与适用场景实现原理

模板和继承的对比

怎么理解多态

实现多态的方式(不用虚函数,如何实现 多态)

继承机制中对象之间是如何转换的?

如何实现只能动态分配类的对象?只能静 态分配呢?

指针和引用的区别

main 函数执行以前,还会执行什么代码?

描述内存分配方式以及它们的区别

分别写出BOOL,int,float,指针类型的变量 a 与“零”的比较语句。

简述数组与指针的区别?

C++求数组元素个数

什么情况下会调用拷贝构造函数

拷贝构造函数的形参不能使用值或 者指针传递

const 有什么用途?

typedef 与 #define 的区别

sizeof 计算的是 对象类型/类型 在栈中分配的内存大小。

sizeof 与 与 strlen 的区别?

内存的分配方式有几种?

全局变量和局部变量有什么区别?是怎么 实现的?

C++中的四种类型转换有哪些?

C++中哪些函数不能声明为inline?

Inline 函数是什么意思?

内联(inline)函数和 #define(宏)

C++异常怎么实现的

智能指针 auto_ptr?(shared_ptr, unique_ptr,weak_ptr)

make_shared与显式通过构造函数初始化 (new)的shared_ptr区别?

智能指针的实现?(share)

野指针产生的原因:

实现 memcpy 需要注意哪些

string的底层实现

string与char*,char[ ]转换

Volatile 关键字作用?

static 关键字的用处

类的隐形类型转换,隐式转换的危害

explicit 是干什么用的?

memset可以初始化类吗?

C++ 里面能够在栈里申请内存吗

malloc 是怎么在堆里分配内存的

auto 关键字的注意点

auto 与decltype区别

C++ 类的实例方法中能否写 delete this

从堆和栈上建立对象哪个快?

内存泄漏的排查

类中 static 修饰的函数是什么时候分配内 存的。

C++ 面向对象 三大 特性

模板特化的概念是什么?为什么要特化?

死锁产生原因,解决方法

构造函数可否是虚函数,为什么?析构函 数呢,可否是纯虚的呢?

public 、protected 、private 继承?

类的私有继承是 is 还是 has ,公有继承 呢?

成员初始化列表的概念,为什么用成员初 始化列表会快一些(性能优势)?

必须在类的构造函数初始化列表里进行初 始化的数据成员有哪些?

左值引用和右值引用

右值的完美转发与转移语义

为什么C++的右值引用&&传参时会看做左值呢?

空类的大小

类的成员函数为什么不占用类的大小

介绍C++所有的构造函数

私有虚函数还可以实现多态吗?

模板类的继承包括四种

Linux里面发生core dump(核心转储) 错误

友元函数和友元类

C++ 三/五原则

模板函数与多态继承、动态绑定

shared_ptr的优缺点(智能指针、共享指针)

共享指针(智能指针)线程安全问题

各个容器优缺点

vector 的 的 resize 和 和 reserve 操作的 区别

STL中vector的实现

unordered_map 和 map 的实现机制, 性能差异

Unordered_map底层实现,桶,链地址,红黑树

vector调用push_back()对性能的影响和 原因。

C++中vector的push_back和 emplace_back的区别

STL的容器线程不安全怎么解决

STL 中排序算法 sort 的实现是什么

list的sort是成员函数

为什么不直接用堆排序实现sort?

vector/list/deque 的区别与联系

Stack 和 和 queue 不用 vector 实现的原因:

为何关联容器的插入效率一般比序列容器高

为什么 vector 的插入操作可能会导致迭代器失效?

set/map 的区别与联系

set,map和vector的插入复杂度

不允许有遍历行为的容器有哪些

哈希函数的构造法方法

解决哈希冲突的方法。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值