错误:变量或字段'PrintEntity'声明为void void PrintEntity(Entity e);

问题描述 投票:0回答:1

代码真的很简单(但是我是新手,所以我不知道我在做什么错:]

#include<iostream>
#include<string>

void PrintEntity(Entity* e);

class Entity
{
  public:
      int x,y;


      Entity(int x, int y)
      {

         Entity* e= this;
         e-> x=x;
         this->y=y;

         PrintEntity(this);

      }

  };

void PrintEntity(Entity* e)
  {
    // *Do stuff*
  }

int main()
  {

     return 0;
  }

我对错误的理解是,我不能在声明之前声明函数PrintEntity类Entity。但是,即使我在类下声明函数,也将是一个问题,因为在构造函数中,我正在调用函数PrintEntity。

所以我很困惑。有人可以向我解释我做错了吗?

c++ function class this declaration
1个回答
1
投票

在类定义之前声明函数,如

© www.soinside.com 2019 - 2024. All rights reserved.