正如标题所说,我无法从我的主文件访问基类的公共成员变量.
Entity.h:14:10:错误:'char Entity :: character'无法访问
entity.h:
#include "Vector2.h"
#include <Windows.h>
class Entity {
public:
Entity(char character, WORD color, Vector2<int> pos);
Vector2<int> pos;
Vector2<int> vel;
char character;
WORD color;
};
Run Code Online (Sandbox Code Playgroud)
player.h:
#include "Entity.h"
class Player : Entity {
public:
Player(int lives, char character, WORD color, Vector2<int> pos);
int lives;
int points;
};
Run Code Online (Sandbox Code Playgroud)
构造函数调用main:
int main(){
Player player(0, 'C', FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY, playerSpawn);
char c = player.character; // error here
return 0;
}
Run Code Online (Sandbox Code Playgroud)
有什么建议?
Ian*_*ix1 10
继承类的默认访问级别是私有的,因此Player私有地继承Entity.
如果您想要公共访问,请使用public在类名前面.
class Player : public Entity {
...
};
Run Code Online (Sandbox Code Playgroud)