首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
rogn
武汉大学 C++
发布于湖北
关注
已关注
取消关注
m
@宁宁天下第一:
日常实习C++面经汇总与教程
最近忙了大概一个月,终于找到实习了,这里把自己面试过程遇到的问题记录一下。ps:很多东西我之前都写过文章,所以重复的地方就直接贴上过去的文章的链接了。这里只放上有关C++的内容,其它的例如项目啊,编译链接工具的使用就因人而异了。C++中的多态以下是一个常见的多态的场景struct A { virtual void foo() = 0;};struct B : A { virtual void foo() { cout << "this is B\n"; }};struct C : A { virtual void foo() { cout << "this is C\n"; }};struct D : A { virtual void foo() { cout << "this is D\n"; }};int main() { vector<A*>v = { new B{},new C{},new D{} }; for (auto& it : v) { it->foo(); }}这里我们用到了虚函数严格鸽:C++虚函数表的位置——从内存的角度对于C++中对象的内存模型,我的建议是用C语言模拟一个严格鸽:C语言实现虚函数/继承/封装这里一个经常遇到的问题,为什么我们说虚函数慢?考虑到,函数在执行的时候,需要进行跳转(汇编的角度而言就是动cs:ip 而虚函数,需要先去虚函数表里面,然后在跳转到相应的函数上,也就是跳转的次数多了,对cache不友好。但是,最重要的是,虚函数不能进行内联优化。请记住,C++的编译器的优化水平很高,但是对于虚函数这种“运行期”确定的函数,是不能依靠编译器进行编译优化的。这里提到了,运行期,和编译期。这两个概念在后面也会提到。那么如何解决这个问题呢?我们可以使用编译期多态来CRTP来解决。严格鸽:现代C++学习—— CRTP 编译期多态(CRTP不是万能的,有些东西必须是运行期的智能指针智能指针的实现就是RAII现代C++如果非要说是C with xxx的话,那么就是 C with RAII严格鸽:现代C++学习—— 什么是RAII严格鸽:现代C++学习 —— 为什么需要std::move至于智能指针的具体实现,网上有很多,大家自己去看就可以了。谈及智能指针,最好也谈以下所有权的概念例如,我现在有个资源,然后我有个函数,我是选择把所有权给这个函数啊,还是把所有权留在原来的作用域。(这个内容在上面的文章就有提及。模板模板就是面向编译器的编程,我们通过编写模板相关的代码,让编译器帮我们根据提供的类型,生成对应的代码。另外,C++的类型系统是十分强大的,所以有关模板的内容希望大家好好学习。C++模板学习实践 (这是个专栏,内容可能比较多,看是看完肯定有收获的另外,有关模板的发展(可以我的文章里面的模板元都是const static 这种比较old的。首先是模板变量和模板类型,过去我们需要::value,::type 现在可以直接定义了。对于标准库,_v 就是 ::value , _t 就是::type ( 所以学一学old版本的很有帮忙的还有就是constexpr 函数,对于编译期计算,可以直接constexpr 函数解决。另外就是C++20的概念与约束了过去我们需要用 严格鸽:现代C++学习——模板SFINAE 来表示一个鸭子类型。鸭子类型:我希望一个类型具有这样的变量,这样的函数。。。 例如下面我们就约束了类型T是一个int或者一个具有size函数len成员变量的类型。template<typename T>concept is_int = is_same_v<T, int>;template<typename T>concept need = requires(T x) { x.size(); x.len;};template<typename T>requires(is_int<T> || need<T>)void foo(T x) {}int main() { foo(1); struct A {void size();int len;}; foo(A{}); struct B { void Size(); int Len; }; foo(B{});//编译失败,ide会报错}上面是几个经常被问道的内容,属于基础了,下面放上几个杂项。lambda严格鸽:c++函数进化史 (函数,函数指针,function,仿函数,lambda)lambda编译器帮我们生成的匿名的仿函数variantvariant是可以析构的union严格鸽:C/C++ union 使用教程 (常见操作与缺陷)严格鸽:现代C++学习——实现多类型存储std::variant类型擦除在问std::any的实现的时候问的。在C语言总,一般是用void* ,然后自己维护一个type严格鸽:现代C++学习——实现动态类型std::any模板元编程就让写了个斐波那契数列但是你可以归并排序!严格鸽:模板元 编译期 链表 归并排序多线程问了一些实现什么的原子类型是用cas (compare and swap) 实现的。其它的锁都是基于原子类型的操作std::call_once之前没有听说过std::call_once - cppreference.compimpl为了加快编译时间的,但是我没这么用过(编译时间不是用来摸鱼的吗有个面试官说过,可以用编译参数来控制。堆,栈空间堆是os帮我们维护的,栈空间编译器帮我们维护了。注意不要写出这样的代码int* foo() { int arr[100]; return arr;}异常安全没有怎么用过(最多几千行的代码,用啥异常啊)可以了解下std::optional 与 std::expectedEffective C++ 29:追求异常安全的代码关于noexcept,可以看下这个代码void foo1() noexcept;void foo1() noexcept(noexcept(foo1())) {}void foo2();void foo2() noexcept(noexcept(foo2())) {}int main() { constexpr bool x = noexcept(foo1()); constexpr bool y = noexcept(foo2());}有一些忘了
点赞 101
评论 16
全部评论
推荐
最新
楼层
还没有回复哦~
相关推荐
11-18 23:23
门头沟学院 产品经理
感谢快手当场出分。这有无机会进下一轮??
不管快手最后捞不捞我我都要夸赞快手好人一个!友们这个分还有戏吗?挺晚做的其实有点困,有好几个都是自己速度慢没得出答案就过去了,有点可惜。想知道,这个分数还有机会进下一轮吗。还有朋友们,现在有个香港startup催促我入职,做的是行政人力,因为是startup所以特别急,强度也会大,压力也会大,现在是等一等12月各大友商的消息?还是等到1、2、3月?还是回家过年回来继续春招? 还是别等了直接香港startup开干、开启职业生涯!好苦恼!!!!友们帮出出主意。
投递快手等公司10个岗位 >
牛客解忧铺
点赞
评论
收藏
分享
11-18 23:23
中国药科大学 外贸业务员
哈哈,终于接到offer了!
这次是来自一家世界500强的外企,真是让我感到无比幸福!找工作真的是靠运气和机遇,面试过程轻松,薪资也很满意。现在终于迎来了转机,心里真是美滋滋的!希望未来的工作能更加顺利!
牛客创作赏金赛
点赞
评论
收藏
分享
10-16 11:41
武汉理工大学 机械设计/制造
长江存储HR就这素质?笑辣
我寻思我前后发言已经很委婉尊重了吧,你offer都没发到我手就在这给我上强度呢?长江存储这么吊的哦,奉劝大家避雷这样的公司,对未入职的都这个态度,对签了牛马合同的还不知道会怎么样呢🤭
剑指延毕:
双向选择 不用那么客气卑微 骂回去
点赞
评论
收藏
分享
09-26 19:08
烟台汽车工程职业学院 Python
金光纸业
xd回去要被开了吧
想润的芹菜人狠话不多:
把其中一个老总放中间都会得罪另一个
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
11-22 14:10
在快手工作的感受
团队里每个人都特别好,大家工作时认真负责,闲聊时又能打成一片,整个氛围很轻松。导师也是个特别负责的人,跟着他学习这两年,我从一个小白成长为项目的主负责,真心感谢他的耐心指导和信任。福利方面也是没话说,每个法定节日和周年庆都会收到创意十足的大礼包,还有好吃的下午茶,真的是满满的幸福感!总之,感谢快手给我带来的这一切,期待在这里继续成长,也希望能遇到更多优秀的小伙伴!
快手公司福利 223人发布
点赞
评论
收藏
分享
点赞成功,聊一聊 >
点赞
收藏
评论
分享
回复帖子
提到的真题
返回内容
全站热榜
1
...
双非本科四年的总结
1.6W
2
...
sagima的阎良出差日记
1.3W
3
...
给正在秋招中枯燥的大家找个乐子听听吧,不被理解真的心寒
1.1W
4
...
简历这样写真的很难挂
9302
5
...
请大家警惕“总包”骗局!
5931
6
...
大哥爆发了?
3916
7
...
秋招可以暂告一个段落啦
3704
8
...
忙完了工作,又要毕业论文……
3528
9
...
领导让我以后别叫他哥
3368
10
...
有奖征集|我想知道,你在秋招中最难忘的一个瞬间
3185
正在热议
#
25届秋招总结
#
269022次浏览
2264人参与
#
学历or实习经历,哪个更重要
#
44693次浏览
338人参与
#
北方华创开奖
#
23902次浏览
260人参与
#
地方国企笔面经互助
#
2962次浏览
7人参与
#
如果实习可以转正,你会不会放弃秋招
#
204959次浏览
2792人参与
#
选完offer后,你后悔学本专业吗
#
14449次浏览
107人参与
#
你觉得专业和学校哪个对薪资影响最大
#
28456次浏览
213人参与
#
0offer是寒冬太冷还是我太菜
#
889469次浏览
7933人参与
#
查收我的offer竞争力报告
#
20230次浏览
258人参与
#
你最想要的公司福利是?
#
42481次浏览
151人参与
#
如何一边实习一边秋招
#
987934次浏览
12610人参与
#
应届生被毁约被毁意向了怎么办
#
28511次浏览
244人参与
#
一觉醒来,我觉醒了超级打工人系统
#
3410次浏览
36人参与
#
当你面对裁员会如何?
#
26234次浏览
152人参与
#
没有实习经历,还有机会进大厂吗
#
807634次浏览
13859人参与
#
来聊聊机械薪资天花板是哪家
#
66408次浏览
448人参与
#
面试体验感最好的是哪家?
#
83849次浏览
819人参与
#
机械应届生薪资要多少才合适?
#
12568次浏览
61人参与
#
如果公司降薪,你会跳槽吗?
#
24873次浏览
236人参与
#
如何写一份好简历
#
605834次浏览
8528人参与
#
寒假躺平还是提前实习
#
59766次浏览
459人参与
牛客网
牛客企业服务