首页 > 解决方案 > 从另一个 C++ 文件访问类

问题描述

所以我有一个“main.cpp”文件,我已经声明了我的班级播放器的一个对象:

主.cpp:

#include "player.h"

Player player;

int main() {
  //
  player.update();
}

我想从多个不同的 C++ 文件访问这个对象。但是,我想在不使用关键字的情况下执行此操作,extern因为我试图远离全局变量。

希望有人可以帮助我。提前致谢!

标签: c++oop

解决方案


而不是编写类似的函数

文件1.cpp

#include "player.h"

extern Player player;

void doStuffToPlayer() {
    player.update();
}

文件2.cpp

#include "player.h"
#include "file1.h"

Player player;

int main() {
    doStuffToPlayer();
}

你可以改为写

文件1.cpp

#include "player.h"

void doStuffToPlayer(Player & player) {
    player.update();
}

文件2.cpp

#include "player.h"
#include "file1.h"

int main() {
    Player player;
    doStuffToPlayer(player);
}

推荐阅读