【问题标题】:Differenciate const int *ptr; int const *ptr; [closed]区分 const int *ptr; int 常量 *ptr; [关闭]
【发布时间】:2020-06-16 03:47:04
【问题描述】:

区分:(用图表详细说明) 一种。常量 int *ptr; 湾。 int const *ptr;

谁能解释一下这个概念-我对第一个有点了解,但对第二个不了解-如果它们相同,那么为什么 C++ 给了我们两种不同的语法来使用它。

【问题讨论】:

标签: c++ oop c++17


【解决方案1】:

为什么不呢?你可以写

class A {
  const int i = 0;
};

class A {
const int i = 0;
public:
  A() {}
  A(int j) : i(j) {}
};

【讨论】:

  • 我们可以改变 const int i = 0 的值吗?在第一个。因为改变价值是个大问题。如果我们可以更改第一个中的值,那么可以吗?你能告诉我吗?
  • 你可以像A(int j) : i(j) {}一样更改const int i = 0;。如果你打电话给A a;,你会得到i==0,但是A a(10)你会得到i==10
猜你喜欢
  • 2020-08-03
  • 2022-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-29
  • 2017-09-17
  • 2013-08-13
相关资源
最近更新 更多