gpt4 book ai didi

c++ - 将类对象数组作为 const 传递给函数,以防止对类对象进行任何修改

转载 作者:行者123 更新时间:2023-11-30 02:46:30 24 4
gpt4 key购买 nike

您好,我是 C++ 的新手,这个问题可能很简单。请耐心等待:)

我有一个类数组 Foo ==> Foo foo_objects[4];

如果我想将这个数组传递给一个函数:

function declaration: void do_something(Foo *foo_objects_ptr);
function call : do_something(foo_ojects);

现在我想将这个 foo_objects 数组传递给函数并防止对这些对象进行任何修改。

function declaration: void do_something(const Foo *foo_objects_ptr);
function call : do_something(foo_ojects);

这是正确的做法吗?这是否保证 foo_objects 中的所有四个对象都不会受到 do_something 方法内部的任何修改,或者只有数组中的第一个对象享有 const 特权?

最佳答案

foo_objects_ptr + ifoo_objects_ptr 具有相同的类型,因此它也是一个常量指针。

因此 foo_objects_ptr[i] 对于所有 i 都是常量。

关于c++ - 将类对象数组作为 const 传递给函数,以防止对类对象进行任何修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23522121/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com