以下函数定义的论证中的2个含义是什么意思?
void myFunction (MyClass* const* const myObj);
答案 0 :(得分:3)
从右到左阅读:
MyClass* const* const
^ ^ ^ ^ ^
| | | | 1
| | | |
| | | 2
| | 3
| 4
5
(1) const (2) 指针指向(3) const (4) 指针到MyClass
。换句话说,您无法更改指针,但MyClass
实例仍然可变。
答案 1 :(得分:1)
参数是指向对象指针的指针。
第一个const
表示无法更改间接指针(作为*myObj
访问的指针)。
第二个const
意味着没有用,因为myObj
是按值传递的,并且使函数的参数的本地副本为const
是没有意义的。