首页 > 代码库 > 某些符号有多重含义
某些符号有多重含义
像*和&这样的符号,既能用作表达式里的运算符,也能作为声明的一部分出现,符号上下文决定了符号的意义。
int i = 42;
int &r = i; //&紧随类型名出现,因此是声明的一部分,r是一个引用
int *p; //*紧随类型名出现,因此是声明的一部分,p是一个指针。
p = &i; //&出现在表达式中,是一个取地址符
*p = i; //*出现在表达式中,是一个解引用符。
int &r2 = *p; //&紧随类型名出现,因此是声明的一部分,r2是一个引用,*出现是在表达式中,是一个解引用符。
在声明的语句中,&和*用于组成符合类型;在表达式中他们的角色又转变成运算符。在不同的场景下出现的虽然是同一个符号、但是由于含义截然不同,所以我们完全可以把它当作不同的符号来看待。
某些符号有多重含义
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。