C++面试八股文:static和const的关键字有哪些用法?
某日二师兄参加XXX科技公司的C++工程师开发岗位第7面:>面试官:C++中,`static`和`const`的关键字有哪些用
某日二师兄参加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++中,`static`和`const`的关键字有哪些用
1、阚(阚)kànㄎㄢˋ◎望。2、◎姓。3、笔画数:14,部首:门,笔顺编号:42551221113134〈动〉(1
证券时报e公司讯,我国被公认为是世界上最具潜力的国际邮轮出发地和目的地市场。目前国际邮轮公司已经开始
解答:1、003010迟志强。首选肯定是重型催泪弹,心情不好的时候非常适合!2、103010一首超级感人的歌,日版
1、你可以看看其它驾校招生的简章,还有报名的活动,多看几家,把精髓吸过来。2、变成自己的,自己认为效果
1、北京体育大学、成都体育学院、北大-体育学院、天津体育学院 太多了!具体要看你家是什么地方的。2、
1、你好!可以。2、胱氨酸片,本药为氨基酸类药,用于产后或病后的继发性脱发症,肝炎及白细胞减少症。3、血
据菲律宾媒体5日报道,菲海关局发布《区域全面经济伙伴关系协定》(RCEP)下关于实施特别关税的条件规定。根
此前,湖南省登山队两名队员为救人放弃登顶珠峰的义举赢得广泛赞誉。可这两天,该事件再次登上热搜,原因竟
1、乙醇的物理常数:2、乙醇液体密度是0 789g cm³,乙醇气体密度为59kg m³,相对密度(d156)0 816
安青网讯为营造健康向上的校园足球文化氛围,丰富学生课余体育文化生活,激发学生对足球的兴趣,增强学生体
6月6日,江苏证监局公告对南京越博动力系统股份有限公司(越博动力)及财务总监徐方伟出具警示函。经查,越
近期公募REITs市场波动幅度加大,部分项目跌幅较前期有所扩大,引发市场普遍关心。据记者观察,机构行为主
中新经纬6月6日电(常涛)近日多家媒体报道称,目前家乐福购物卡在结算时只能使用总金额的20%。针对此消息,
近日,广州市南沙区南沙街道12345政务服务便民热线平台收到了一封特别的表扬信。日前,有市民拨通12345政务
什么是风控审核标准呢?在这里,我们可以简单理解为,如果一个平台出现逾期,就会有相应的风控措施,比如逾
本文目录一览1,海棠花是什么颜色的2,海棠花是什么颜色3,海棠是什么颜色的4,海棠花是什么颜色5,海棠花
一,海港和三镇两支强队占据大名单的半壁江山,已经注定了扬科维奇会延续俱乐部打法在国家队的延续性。扬科
凤凰传媒:凤凰传媒第五届董事会第九次会议决议公告
泉州市第二中心小学常泰校区预计9月份投入使用开栏语:为贯彻落实“深学争优、敢为争先、实干争效”行动要