gpt4 book ai didi

C++ 在该类的函数中使用该类的对象

转载 作者:太空狗 更新时间:2023-10-29 21:46:15 25 4
gpt4 key购买 nike

假设我有一个如下所示的头文件:

# filename: header.h
class myclass
{
public:
int myVariable; # arbitrary member variable
foo(); # arbitrary function
myclass() # default constructor
}

现在假设我想在某个 .cpp 文件中实现我的构造函数 [ myclass() ]:我可以做一些事情,比如创建一个数组,对象,整数,任何东西 - 只是一些数组。然后我可以遍历该数组并在我的构造函数定义中全部填充它吗?

我问的原因是因为我希望我的任意成员函数 foo() 能够更改这个数组。这导致了问题——我是否将 myclass 的对象传递给 foo [ foo(myclass myclassObject) ?

还是将此对象的数组传递给 foo() ?

如能对此作出任何澄清,我们将不胜感激。我尽量使示例尽可能不特定于特定情况,但仍然具有足够的描述性,让每个人都能理解问题。谢谢!

最佳答案

是的,您可以在构造函数中创建并“填充”一个数组,以便 foo 使用它。事实上,这就是构造函数的目的(为您设置一切)。

请注意,如果您希望 foo() 能够使用数组,则必须将数组作为类定义的一部分。

myclass.h

class myclass {
private:
int* arr; // declared on the "heap"
public:
foo();
myclass(int arraySize);
};

myclass.cpp

#include "myclass.h"
#include <stdio>

myclass::myclass(int arraySize) :arr(new int[arraySize]) {}

myclass::foo() {
// prints the elements of the array we declared earlier
for (int i = 0; i < 5; i++) {
std::cout << arr[i] << std::endl;
}
}

关于C++ 在该类的函数中使用该类的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15674950/

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