面试 3.20

C++ lambda怎么实现

C++ shared_ptr 实现

proactor\reactor模式怎么使用

介绍move 与 完美转发foward

编译器怎么优化模板

template <typename T>
class Base
{
public:
    void func()
    {
        static_cast<T *>(this)->func1();
    }
};
class D : public Base<D>
{
public:
    void func1()
    {
        cout << "s" << endl;
    }
};
Base<D> *d = new D();
d->func();

class Base
{
public:
    virtual void func()
    {
    }
};
class D : public Base
{
public:
    virtual void func() override
    {
        cout << "s";
    }
};

Base *d = new D();
d->func();

上面两段1(模板)比2(虚函数)快,模板编译时就确定了直接调用即可(静态),虚函数需要先查虚函数表再调用函数(动态)

介绍NAT

树,数组,链表分别什么情况下用

基于udp实现像tcp一样的稳定协议

tcp粘包加什么分隔符解决

c++栈空间多少,爆栈后编译器会有什么操作

最大公约数gcd

sql设计:orders表 user表 找出买东西数量top10的user输出他们的信息

select
    customer_number
from
    Orders
group by
    customer_number
order by
    count(*) desc
limit 10

数学:社会上1%的概率得病,事实上ill检测为ill的概率95%检测为healthy的概率5%;事实上healthy检测为ill的概率5%检测为healthy的概率95%,一个人检测一次结果是ill并且此人事实上为ill的概率(1%*95%)/(1%*95%+99%*5%)=16.1%;一个人检测两次结果都是ill并且此人事实上为ill的概率(1%*95%*95%)/(1%*95%*95%+99%*5%*5%)=78.478%

全部评论
1 回复 分享
发布于 2023-03-20 22:27 江苏
刺激,CRTP也有问
1 回复 分享
发布于 2023-04-19 16:36 浙江
回答出来了么
点赞 回复 分享
发布于 2023-03-22 17:42 山东
三个问题还是比较基础的
点赞 回复 分享
发布于 2023-03-22 17:45 湖北

相关推荐

牛客771574427号:恭喜你,华杰
点赞 评论 收藏
分享
6 58 评论
分享
牛客网
牛客企业服务