相关疑难解决方法(0)

'const'方法可以改变什么?

C++方法允许const限定符指示该方法不更改对象.但是,这是什么意思?例如.如果实例变量是指针,它是指意味着指针没有改变,还是它们指向的内存没有改变?

具体来说,这是一个最小的示例类

class myclass {
  int * data;

  myclass() {
    data = new int[10];
  }

  ~myclass() {
    delete [] data;
  }

  void set(const int index) const {
    data[index] = 1;
  }
};
Run Code Online (Sandbox Code Playgroud)

该方法set是否正确符合条件const?它不会更改成员变量data,但确实会更改数组的内容.

c++

24
推荐指数
3
解决办法
7311
查看次数

标签 统计

c++ ×1