例外情况-符号“&”的含义 我现在正进入C++的异常,我注意到我以前使用过的一个字符,但不是这样。这是一个符号(&s),由cplusplus.com用作: 捕获异常&e

例外情况-符号“&”的含义 我现在正进入C++的异常,我注意到我以前使用过的一个字符,但不是这样。这是一个符号(&s),由cplusplus.com用作: 捕获异常&e,c++,C++,而我以前用过这样的指针: pointer=&var,它为指针提供了var变量的位置 如果&字符的两种用法完全不同,那么它们有什么不同?有三种含义&: 位二进制运算符 0x010 & 0x100 == 0x110 int x = 42; int* p = &x; 一元运算符地址 0x010 & 0x100 == 0x110 int x = 42; int* p = &x; 作为类型的一部分时引用 int x = 42; int& r = x;

而我以前用过这样的指针: pointer=&var,它为指针提供了var变量的位置


如果&字符的两种用法完全不同,那么它们有什么不同?

有三种含义&:

位二进制运算符

0x010 & 0x100 == 0x110
int  x = 42;
int* p = &x;
一元运算符地址

0x010 & 0x100 == 0x110
int  x = 42;
int* p = &x;
作为类型的一部分时引用

int  x = 42;
int& r = x;
你看到的是后者

这并不特定于例外情况;这只意味着您正在捕获作为异常抛出的对象的引用。这意味着您不需要复制异常对象,这提高了代码的安全性,特别是考虑到它当前正在处理意外或异常情况

该读了

它们是不同的

pointer = &var;
表示指针获取var的地址

表示当传入e时,我们不会复制它,而是传入对象本身

我们通常在函数参数中使用此选项:

void mySwap (int& a, int& b) ...

...

mySwap (x, y);
我们把x传给a,把y传给b,但我们不会像没有&时那样传副本;我们自己传递x和y。从技术上讲,我们通过引用传递它,但这就是它的含义。如果我们想改变x和y,这是很重要的,但这也是一种避免麻烦复制的简便方法。如果要跳过制作副本但不更改参数,请使用常量:

void myFunction (const Type& thingThatMustNotChanged);

<>在C++中,运算符'& '可以重载。这意味着同一个操作符在不同的上下文中可以有不同的含义。C++中有许多操作符可以重载。 “&”运算符通常有3种含义:

在参考案例中:

int val1 = 2;
int &rval = val1;
在上述情况下

rval 
是指

val1
这意味着任何使用

rval
实际上是使用

val1
注意:引用不是对象。这意味着引用不占用内存中的任何空间,普通引用只能绑定到非常量对象。而不是常量对象、文本或表达式的结果

现在在指针的情况下:

int val1 = 2;
int *ptr = &val1;
在这种情况下,“val1”的地址存储在“ptr”中。但是指针是一个对象,这意味着当我们使用解引用操作符“*”时,我们使用的是指向的值。但当我们不这样做时,我们使用的是指针

*ptr = 55 // pointed to value is changed 
 ptr = p; // the pointer's own memory
*最后但并非最不重要的一点,用作位运算符:

按位运算符处理二进制数字,即0和1。当我们使用“&”时,这意味着我们使用的是按位“and”运算符。这是一个二进制运算符,意味着它与两个操作数一起工作。这里的“按位and”运算符测试两个位是否都包含二进制数字“1”,如果是,则结果为1,否则为0


*不要与包含两个“&&”的“逻辑and”运算符混淆。

您使用的是哪本书在引用之前教导异常?我认为最好将引用视为一个指针,就像使用常规对象一样。就像指针一样,您可以拥有对不再存在的对象的引用。根据使用情况,多次引用将编译成指针。@Dave:就像指针一样,您可以拥有对不再存在的对象的引用。不,我的意思是,当你搞乱了你可以在物理上达到这种状态,但只有在你已经违反了C++语言的先决条件,这样你就不再写它了。因此,在C++中,不可能。@ C++语言中的@ LeNNECSRESIN轨道先决条件?你得详细说明。这几乎和使用指针一样容易——它打破的唯一先决条件是您在自己的程序中所做的任何事情。自动a=使_唯一;A&b=*A;a、 重置;-那里还没有坏东西,我想我理解你。但我们在这里面对的是一个初学者。我不想让他感到困惑,因为我不想说,这很像一个指针,他可能还没有完全理解,除了不完全理解。@Dave:胡说。你有一份悬而未决的推荐信。