快手一二面面筋

两面7题,纯代码面;为什么我的面试和其他人不一样...


1. 单例模式 用double check+锁写的


2. 用各种容器实现栈,线程安全,cas怎么实现


3. lru


休息十分钟二面


4. 上来先问现在单例模式有最新的写法给你5分钟改下,我说了下可能会有指令乱序的问题,最新的写法没了解过。


5. 删除链表节点


6. string a+ string b,数值相加


6. 非递归快排,写完后改成 k element


7. 楼梯丢鸡蛋,说了思路问动态规划怎么写


8. 然后聊了一个基础
class base
{
public :
    void func(){}
	virtual void func(int val){}
};

class derived : public base
{
public:
    virtual void func(int val){}
};

int main()
{
	derived d;
	d.func(); // 这里会不会出错
	d.func(1);
	
	base* b = new derived();
	b->func(); // 这里会不会出错
	b->func(1);
    return 0;
}


反问:面试官说多思考

#面经##校招##快手##C++工程师#
全部评论
楼主约三面了?
点赞 回复 分享
发布于 2020-08-25 13:23
最新的单例写法是static局部变量,C++11保证线程安全。
点赞 回复 分享
发布于 2020-08-25 14:02
lz是ai平台吗
点赞 回复 分享
发布于 2020-08-25 18:31
请问第八个问题 子类对象调用的是哪个func,能不能调用不带形参的func; 父类指针指向子类对象,这种情况下呢。 应该怎么答啊?
点赞 回复 分享
发布于 2020-08-25 23:02
请问大佬最后一个题为什么是这样子,C++隐藏特性的规则到底是啥呢?
点赞 回复 分享
发布于 2020-08-26 10:14
是不是只要是子类中实现了与父类同名的函数,不管参数是否相同,除了父类函数和子类函数都是虚函数的时候,这时候算是覆盖,其他情况只要同名,算是隐藏
点赞 回复 分享
发布于 2020-08-26 10:24
因此用子类对象或者指针访问该函数名的时候是访问不到被隐藏的函数的,用指向子类的父类指针可以访问到的原因是什么呢
点赞 回复 分享
发布于 2020-08-26 10:27
楼主收到快手三面了嘛?
点赞 回复 分享
发布于 2020-08-26 16:59

相关推荐

不愿透露姓名的神秘牛友
10-05 23:31
点赞 评论 收藏
分享
3 9 评论
分享
牛客网
牛客企业服务