【发布时间】:2016-03-23 16:18:24
【问题描述】:
我正在用 C++ 创建一个控制台程序。
我有像 "error wrong usage, usage is: program <parameter> <parameter2>" 或 "game over!" 这样的静态文本行
我最近有一个 C 项目,其中所有代码都必须放在一个 c 文件中。我刚刚做了很多这样的定义:
#define ERRUSAGE "Usage error: correct usage is ./bla - bla2 -etc"
在包含之后和函数预定义之前。
现在我正在开发一个允许有多个文件的 c++ 程序。我知道我会使用 .h 文件来定义某些东西,并使用 .cpp 文件来实现某些东西。
这里的方法是制作一个 staticTextOutput.h 并用
填充它#ifndef BLABLA
#define BLABLA "sometext"
#endif
然后将它包含在我需要的地方?
这里的最佳做法是什么?
o/
编辑:
感谢您提醒我制作 const 而不是使用定义;这很重要。
为了完善我的问题:我还想知道文件结构应该是什么样子(因为 .h 文件传统上包含声明和 .cpp 文件定义)。
我知道这应该如何查找函数和类,因为它具有静态/常量成员,所以结构(例如作为答案发布的 Xaqq)会去哪里?
【问题讨论】:
-
我认为您应该为此类消息创建单独的命名空间,并使用 const 字符串或其他东西,可能是它们的数组或向量。
-
你可以使用
constexpr代替定义,在C++11中更好。
标签: c++ c-preprocessor file-structure