Cpp_返回值

内容

image-20211107095730498
GetValue返回的是临时变量副本,由寄存器作为传递媒介。

  1. a1可以。因为调用的是public函数。但是得到的是经过寄存器赋值拿到的副本。
  2. 应该不可以,因为返回值是一个将亡值,不能对其进行普通引用。
  3. 猜测可以对将亡值进行常引用。

2

image-20211107101017513

3

image-20211107102226241

4

image-20211107103310102

5

image-20211107112403421

6

image-20211107114851729

7

image-20211114192200476

Test ta(10)一个Int

  1. √–编译器优化,直接拷贝构造,一个Int
  2. √–没产生
  3. √–没产生
  4. ×
  5. ×
  6. √–没产生
  7. √–没产生
  8. √–没产生

8

image-20211114195324558

  1. ×
  2. ×
  3. ×
  4. ×
  5. ×

9

image-20211114201105648

10

image-20211114203355621

  1. b1:指针的临时量也算是一个将亡值
  2. p1:√
  3. p2:√
  4. p3:√
  5. p4:√

11

image-20211114204142437

  1. a1:√
  2. a2:×
  3. a3:√
  4. b1:?,×,必须在b1的Int前加const
  5. p1:×
  6. p2:√
  7. p3:×
  8. p4:√