gpt4 book ai didi

c++ - 来自类的访问列表,在父类中

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:57:21 25 4
gpt4 key购买 nike

我是 C++ 的新手,并且有使用其他编程语言的经验,但我有一个问题:我如何从父类访问子类的列表?

这是我的布局:带有函数 TutorialApp::update() 的 TutorialApp.cpp在该函数中,我想从另一个类访问列表 mParticles2y该列表是在:ParticleController.cpp 中制作的,如下所示:

std::list<int> mParticles2y;

我试过像这样访问列表 [在 TutorialApp 中]:mParticleController.mParticles2y.size() [获取它的大小]

但这给了我这个错误:

call of an object of a class type without appropriate operator

所以我真的不知道从这里去哪里......

PS:我使用 mParticleController,因为它是我脚本中的状态:

ParticleController mParticleController;

我希望这是足够的信息。

PS:我不太确定这叫做类还是子类,我使用这些术语是因为我从 ActionScript 中了解到它们 [它以类似的方式处理类]

最佳答案

有错误的循环代码应该更像这样。它可能无法完全编译,因为我现在无法轻松编译它。这不是解决问题的理想方式,但它对您的代码的影响最小。我会将此循环移动到 ParticleController 类作为返回 true/false 以指示命中的成员函数。那样封装会更好。

    for(std::list<int>::iterator yit = mParticleController.mParticles2y.begin(), 
std::list<int>::iterator xit = mParticleController.mParticles2x.begin();
yit != mParticleController.mParticles2y.end() && xit != mParticleController.mParticles2x.end();
yit++, xit++)
{
if(
(coordy >= *it) && (coordy <= (*it) + 40) &&
(coordx >= *xit) && (coordx <= (*xit) + 40)
)
{
mParticleController.removeTargetedParticles(i); //remove blokje
score += 1; //score verhogen
}

关于c++ - 来自类的访问列表,在父类中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7904696/

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