gpt4 book ai didi

c++ - 无法从另一个对象调用成员函数

转载 作者:行者123 更新时间:2023-11-28 00:35:31 24 4
gpt4 key购买 nike

几个月前我开始用 C++ 编写代码,现在我一直在尝试以面向对象的方式编写这个 Tic Tac Toe 游戏的代码,但是我在调​​用成员函数时遇到了一些麻烦,让我们说只是为了方便参数,A 类通过来自 B 类的另一个成员函数。

这里有一段代码只是为了清除它:

#include <cstdio>
#include <cstdlib>
#include <iostream>

using namespace std;

class A
{
private:

char cBlocks[9];

public:

void setA(int nBlock, const char cCharacter)
{
cBlocks[nBlock] = cCharacter;
}
};

class B
{
private:

char cB;

public:

char getB()
{
return cB;
}

void makePlay(int nB)
{
const char cChar = getB();

A::setA(nB, cChar);
}
};

因此,当我尝试从 B::makePlay(int) 函数中进行此调用时:

A::setA(nB, cChar);

显示以下错误:“调用没有对象参数的非静态成员函数”。

我该如何解决这个问题?怎么了 ?感谢所有帮助!谢谢!

最佳答案

您需要在 A 类的实例上调用 setA

A a;
a.setA(nB, cChar);

关于c++ - 无法从另一个对象调用成员函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21120030/

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