某日二师兄参加XXX科技公司的C++工程师开发岗位第7面:
面试官:C++中,
static和const的关键字有哪些用法?二师兄:
satic关键字主要用在以下三个方面:1.用在全局作用域,修饰的变量或者函数为静态的,限制在本文件内使用。2.方法内修饰修饰静态局部变量,在第一次访问的时候初始化。3.内类修饰成员函数和成员变量,此函数或变量由类持有,而非类的对象持有。
(资料图片仅供参考)
二师兄:
const关键字主要也有三个用途:1.修饰函数参数,则在函数内部不可以修改此参数。2.修饰类的成员方法,表面此方法不会更改类对象的任何数据。3.修饰变量,表明变量不可以被修该。面试官:现在两个指针,一个是
const int*,另一个是int * const,两者有什么区别?二师兄:这要要看
const和*的位置,const在前称为常量指针,const在后称为指针常量。常量指针的指针部分可变,指针指向的内容不可变。指针常量则相反,指针指向的内容可变,指针不可变。面试官:嗯,那么你知道顶层
const和底层const吗?二师兄:额。。。不知道。。。
面试官:知道
constexpr关键字的作用吗?二师兄:了解一些。
constexpr关键字修饰的变量具有编译器求值的功能。修饰的函数是否在编译器求值要取决于传入的参数是不是编译器确定的,这属于元编程的范畴。面试官:嗯,那你知道
consteval和constinit这两个关键字的作用吗?二师兄:额。。。了解过一些,忘记了。
面试官:好的,回去等通知吧。
让我们来复盘一下今日二师兄的表现:
const在前称为常量指针,const在后称为指针常量。
这里的表述仁者见仁智者见智。但是在大名鼎鼎的《C++ Primer Edition 5》中文版中,const int* 被称为指向常量的指针,而int* const则被称为常量指针。这种表述更容易理解两种指针的差异。
你知道顶层
const和底层const吗?
这里的顶层const和底层const概念主要是为了区分const修饰的是变量本身还是变量指向的内容。
int i = 42;const int ci = 42;//顶层constconst int* pi = &i; //磁层const,因为const修饰的是i所在的地址,不能通过pi去修改i,但是可以修改piint* const pi2 = &i;//顶层const,因为pi2无法修改const int& ri = i;//底层const,不能通过ri修改i在传递参数时,顶层const可以被忽略,而底层const不能被忽略。
你知道
consteval和constinit这两个关键字的作用吗?
还记得constexpr是否在编译时求值要取决于传入的参数吗?如果传入的参数是编译时确定的,constexpr函数就会在编译时求值,反之则会在运行时求值。
constexpr int add(int a, int b){ return a+b;}constexpr int sum1 = add(1,2);//编译时求值int a = 1, b = 2;int sum2 = add(a,b);//运行时求值当使用consteval修饰函数和变量时,如果不能在编译时求值,则编译错误。
consteval int add(int a, int b){ return a+b;}constexpr int sum1 = add(1,2);//编译通过,在编译时求值int a = 1, b = 2;int sum2 = add(a,b);//编译失败constinit关键字用于声明一个变量为常量初始化变量。使用constinit可以保证静态变量的初始化顺序和线程安全性,从而避免竞争条件的发生。需要注意的是,constinit关键字只能用于静态变量的初始化,不能用于动态变量的初始化。
需要注意的是,consteval和constinit关键字是C++20引入的, 小伙伴们可以在编译时加入-std=c++20尝试使用这两个关键字。
好了,今日份面试到这里就结束了,小伙伴们,对于今天二师兄的面试,能打几分呢?
关注我,带你21天“精通”C++!(狗头)
标签:
某日二师兄参加XXX科技公司的C++工程师开发岗位第7面:>面试官:C++中
分析师下调苹果评级,称首发头显仅仅会带来短期利好:D A Davidson分析
2023“健康人生·绿色无毒”“防毒护苗”公益健步走活动在三亚举行新海
1、可以的。2、现在和以前泳衣不一样了。3、以前要扒开泳衣才能看到屁
记者6日从中国国家铁路集团有限公司了解到,6月8日起,宁杭高铁、京港
想必现在有很多小伙伴对于dmzj是什么意思,是什么的简称方面的知识都比
1、act5的野蛮人:最强悍的肉搏佣兵,天生的嗜血者。2、技能:Bash(重
1、跪能移2、顶着东西站着东西能掉3、用簪或针扎隐秘古代惩罚丫鬟体罚
据内蒙古日报报道,近年来,内蒙古将绿色发展理念贯穿制造业发展全过程
首艘国产大型邮轮出坞,打造船舶工业高质量发展“新样本”---6日,在东
近日北京市医疗机构报告两例猴痘病毒感染病例,其中一例为境外输入病例
1、青门引【宋】张先乍暖还轻冷,风雨晚来方定。2、庭轩寂寞近清明,残
大便不成形但不是拉稀、由于饮食不当或肠道疾病,患者消化不良,胃肠菌
每经AI快讯,万润科技(SZ002654,收盘价:7 19元)6月6日晚间发布公告
IT之家6月6日消息,巨湾技研推出新款凤凰电池,能量密度可达260Wh Kg,
1、根据被测力的大小选择量程合适的弹簧测力计,不能超量程测量,又不
由SquareEnix开发的「FF7Re」系列第二作《FINALFANTASYVIIREBIRTH》本
美股三大股指小幅低开,道指跌0 05%,纳指跌0 21%,标普500指数跌0 12%
邮轮游产品受热捧国际邮轮公司布局中国市场:据媒体,我国被公认为是世
海外网6月6日电据日本福岛电视台、韩国《韩民族日报》6日报道,为将核
草长莺飞的五月过去,火红火红的六月就在眼前,沐浴着风和日丽,我们迎
1、130和155号码都是一样的,这两个都是联通号段,不存在所谓的好不好2
1、这是手机卡的本来属性。2、防止你流量到顶之后继续使用流量。3、把
1、林子之,男,杜皮乡杜皮咀村人,1890年出生,1938年7月出生,1941年
1、《林子三教正宗统论》是一本图书文章到此就分享结束,希望对大家有
解答:1、小学女生问老师:“我奶奶八十岁了。她能怀孕吗?”2、老师:
90年代微生物发酵法的诞生与规模生产,大幅度降本增效,让透明质酸应用
智通财经讯,睿能科技(603933 SH)公告,公司股东平潭捷润股权投资管理
a topic-link{margin:10pxauto;display:block;width:600px;} topic-box{width:600px;heig
1、水遁 水龙弹之术SeiTon,Seileondangnojizi。本文到此分享完毕,希望
Copyright © 2015-2022 现在服装网版权所有 备案号:粤ICP备18023326号-5 联系邮箱:855 729 8@qq.com