-1

我有一个在构造函数之前包含一个函数的类,它本身是空的,仅此而已,所以我的类只包含函数和一些不太重要的元素。

我怎样才能调用这个函数来工作,但只有在我想要的时候?ClassName ObjectName然后ObjectName.FunctionName不起作用。

这是属于类(Cellstruct.h)的头文件的内容:

typedef struct tiles
{
    unsigned char red, green, blue;
}tiles;

const tiles BASE = {0,0,0};
const tiles TEST_ALIVE = {255,0,0};
const tiles CONWAY_ALIVE = {0,255,0};
const tiles CONWAY_DEAD = {0,50,0};

class Cellstruct
{
public:
    Cellstruct(void);
    virtual ~Cellstruct(void);
};

这是属于类(Cellstruct.cpp)的cpp文件的内容:

#include "Cellstruct.h"

bool equality(tiles* a, const tiles* b) 
{
    if (a->red == b->red && a->green == b->green && a->blue == b->blue)
    {
        return true;
    } else {
        return false;
    }
}

void Automaton(tiles arra[fullwidth][fullheight], tiles arrb[fullwidth][fullheight])
{

//*this is way too long so I cut it, I think it doesn't really matter*

}

Cellstruct::Cellstruct(void)
{
}

Cellstruct::~Cellstruct(void)
{
}
4

1 回答 1

1

ObjectName.FunctionName你指的是你的功能void Automaton吗?

如果是这样,它似乎不是您的 Cellstruct 类的一部分。

你的类应该包含一个原型void Automaton

在您的标题中,添加原型:

class Cellstruct
{
public:
    Cellstruct(void);
    virtual ~Cellstruct(void);

    void Automaton(tiles arra[fullwidth][fullheight], tiles arrb[fullwidth][fullheight]); //Add this
};

然后在您的源文件中,将该函数定义为您的类的一部分。

void Cellstruct::Automaton(tiles arra[fullwidth][fullheight], tiles arrb[fullwidth][fullheight])
{
    //*this is way too long so I cut it, I think it doesn't really matter*
}
于 2013-05-27T19:27:32.153 回答