在 C++ 中制作基于文本的 RPG 游戏/模板时出现问题 [关闭]

Posted

技术标签:

【中文标题】在 C++ 中制作基于文本的 RPG 游戏/模板时出现问题 [关闭]【英文标题】:Problems Making Text Based RPG game/template in C++ [closed] 【发布时间】:2016-04-21 19:54:07 【问题描述】:

我正在 C++ 中为一个类制作基于文本的 rpg,我正在为故事部分使用多文件树结构,当其中 2 个部分合并到另一个故事部分时,我收到一条错误消息,指出部分正在重新定义,我听说过使用标头,但这一直不起作用,因为我不知道该怎么做!这是我所有文件的链接:hey I am over here!

【问题讨论】:

您没有为我们提供任何代码来帮助您。 @Ven 查看它包含我的代码的链接,它是多个文件,这将花费很长时间,如果我进行更改,我将不得不重写。 不要给我们一个谷歌驱动器的链接。将您的问题简化为可以向我们展示的内容。 【参考方案1】:

您可能忘记在文件顶部添加include guards。这些可以防止您的文件被多次编译。你也可以在同一个作用域或函数中定义两次变量。

示例(来自***)

#ifndef GRANDFATHER_H
#define GRANDFATHER_H

// this code is only compiled once thanks to the
// preprocessor directive #ifndef    

struct foo 
  int member;
;

#endif /* GRANDFATHER_H */

【讨论】:

任何值得一提的 C++ 编译器都可以处理 #pragma once 而不是显式定义。 #pragma once非标准。看到这个答案:***.com/questions/23696115/… 好点,但我从未说过这是一个标准;除非 OP 坚决要在 Solaris (en.wikipedia.org/wiki/Pragma_once#Portability) 上编译,否则使用 #pragma once 不应该有任何可移植性问题。

以上是关于在 C++ 中制作基于文本的 RPG 游戏/模板时出现问题 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

打开游戏显示没有设定RPG制作大师2003的run-time包装应该怎么解决啊

跪求RPG制作大师2003高级教程

简易2D横版RPG游戏制作

rpg maker mv 能不能制作中文游戏

将结构存储在数组中(C++)

Unity3D RPG游戏制作 随堂笔记