首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用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
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
昨天 14:54
已编辑
字节跳动_抖音互娱_前端工程师
三次入职字节,我终于成为了一名正式的bytedancer
现在是7月10日晚上9点半,好久没有这么早到家了,刷了半个小时手机,终于能有时间把最近想写的东西写下来。 算起来,这已经是我第三次入职字节了,去年5月第一次进字节实习,充满了焦虑与不安,什么都不会,也不知道自己能不能拿到转正offer;第二次入职是今年2月,年后的第一天就来报道了,当时上手快了很多,一来就接了两个需求,但因为有一段时间没写代码,也略显生疏;6月初,我第三次进组,那个时候刚结束毕业旅行,进组后迎接我的是需求大礼包,我也很快进入了工作状态。6月19号终于把飞书卡片上的实习变成了正式,很是感慨。一、身份的转变带来了什么不同? 对于我来说,从实习变成正式是一件非常开心的事情,毕竟自己努...
字节跳动工作体验
点赞
评论
收藏
分享
07-09 22:05
门头沟学院 游戏后端
26届双非小厂实习一个月被辞退
鼠鼠是一名26届双非的大三生,今天下午在看文档是被人事叫到办公室谈离职。原因是带鼠鼠的那位(专业称呼应该是叫mentor吧)觉得我主动性和积极性不足,以及加班时间不够。 先说一下公司和mentor的情况,公司是一家软件和硬件都做的小公司,10年了人数稳定在50~60人。其他年份不清楚招收情况,反正今年光我之后来的就有五六个,公司是大小周,上班时间是上午9:00到下午6点,但是,要加班。硬件部门要加到8点,软件部门要加到9点,面试的时候只是说可能加班有点多,到我入职就成了硬性加班了,加班费从6点加到9点有20块。我的mentor是个大忙人,看样子应该身兼好几个项目,所以经常见不到他,早上到公司一...
点赞
评论
收藏
分享
05-28 08:31
已编辑
门头沟学院 前端工程师
终于圆梦了!!!梦中情厂
暑期结束🔚本以为是拉锯战 没想到是闪电战速通 腾讯-金融科技 and 字节-抖音深圳见!
雨夜迈巴赫:
当初青涩的少年如今已经独当一面了呀杨神
腾讯2025实习生招聘
点赞
评论
收藏
分享
05-23 20:59
湖南工商大学 测试开发
26届后端实习,接下来该咋办
前面醒悟的太晚了,学的也太慢了,以至于真的没学什么东西,简历写的太烂了,现在是不知道改怎么走了,特来请教一下各位大佬,有没有好心人给一点建议,😭要转去干别的吗?还是再花时间在后端上,写项目,再继续学?还有一个数字马力的校招机会,还有两轮,或者准备数字马力?
影中藏刀:
看得出你准备的真的很少,不过去年在这个时候我还在学ssm呢,比我要好得多呢,肯定有机会的呢,努力成为八股文战神吧
投递数字马力等公司7个岗位
点赞
评论
收藏
分享
07-10 15:14
苏州大学 产品经理
25届还没有找到工作,是不是废了
上周刚参加完毕业典礼,此刻的我,静静地坐在回家的火车上,一股酸涩涌上心头,泪水在眼眶里打转。大学这如梦似幻的四年时光,仿佛是一场绚丽的舞台剧,幕起幕落,如今谢幕了,我却像是从美梦中骤然惊醒的旅人。感觉自己像那四月里无根的柳絮,在命运的微风中漂泊无依,不知人生的下一个渡口在何方。211工科女,大学期间也有过学生干部社团经历,拿过奖学金,也有过两段实习经历。之前因为一心备战考研,我错过了秋招的黄金时期。现在求职投出一份又一份简历,参加一场又一场面试,却都如石沉大海,杳无音信。如今,终于毕业了,我也彻底迷失了方向,找不到前行的路标。未来的路,我应该何去何从呢?
应届生,你找到工作了吗
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
四段实习终大厂 如此牺牲为哪般
2.0W
2
...
双非二本靠一张嘴拿下美团
1.2W
3
...
儿时记忆在梦中闪回,一觉醒来继续做“大人”
3818
4
...
大疆测评流程分享
3735
5
...
死喽,面试前因为网名被HR制裁咯
2926
6
...
面试完后直接和室友吵起来了
2842
7
...
我的leader一直问我有没有对象
2687
8
...
计算机真的太苦了
2395
9
...
出轨你还有理了?
2298
10
...
作为hr,已被求职者整疯
2289
创作者周榜
更多
正在热议
更多
#
实习生的蛐蛐区
#
44393次浏览
350人参与
#
夸夸我的求职搭子
#
199671次浏览
1915人参与
#
你认为小厂实习有用吗?
#
16011次浏览
198人参与
#
说说你知道的学历厂
#
30957次浏览
184人参与
#
应届生,你找到工作了吗
#
18899次浏览
142人参与
#
计算机有哪些岗位值得去?
#
14293次浏览
139人参与
#
你找工作的时候用AI吗?
#
15812次浏览
196人参与
#
面试尴尬现场
#
26552次浏览
179人参与
#
下班后的时间你怎么安排
#
8424次浏览
124人参与
#
哪一瞬间觉得自己长大了
#
7822次浏览
175人参与
#
社会教会你的第一课
#
31332次浏览
409人参与
#
材料人,你们签了哪个公司
#
7094次浏览
17人参与
#
三一重工求职进展汇总
#
12837次浏览
60人参与
#
中核求职进展汇总
#
20398次浏览
152人参与
#
电网笔面经互助
#
36399次浏览
354人参与
#
在职场上,你最讨厌什么样的同事
#
14807次浏览
150人参与
#
简历当中有水分算不算造假?
#
25234次浏览
373人参与
#
神州信息工作体验
#
16318次浏览
75人参与
#
硬件应届生薪资是否普遍偏低?
#
74961次浏览
516人参与
#
学历贬值真的很严重吗?
#
22125次浏览
162人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务