2.4.3节练习

练习2.30

const int v2 = 0;        //顶层const;

int v1 = v2;               //整型变量,不是const

int *p1 = &v1, &r1 = v1;    //不是const

const int *p2  = &v1, *const p3 = &i , &r2 = v2;     //p2是底层const, p3既是顶层const,也是底层const, r2是顶层const(用于声明引用的const都是顶层const)。

练习2.31

r1 = v2;      //合法,但两者都不是const,只是普通的引用和赋值。

p1 = p2;    //不合法,p2包含底层const的定义,而p1没有

p2 = p1;    //允许一个指向常量的指针指向一个非常量对象。

p1 = p3; // 不合法,p3包含底层const的定义,而p1没有。

p2 = p3;  // 合法,这两个指针都是底层const 

 

 

 

 

相关文章:

  • 2021-07-11
  • 2022-01-24
  • 2022-12-23
  • 2021-04-20
  • 2022-01-17
  • 2020-04-29
  • 2021-12-29
  • 2021-12-04
猜你喜欢
  • 2021-10-11
  • 2021-12-24
  • 2021-10-06
  • 2021-05-23
  • 2022-01-31
  • 2021-04-16
  • 2022-12-23
相关资源
相似解决方案