【发布时间】:2013-08-13 16:10:08
【问题描述】:
在我的文件夹中,我有一个小的 version.cpp 文件,其结构如下:
#include "thelibr/version.h"
const int major = MAJOR;
const int minor = MINOR;
我无法理解这段代码的作用以及代码的其余部分(存储在同一目录的其他文件中)如何使用它。
首先,我知道代码设置了两个变量(major 和minor)的值,但我不清楚MAJOR 和MINOR 的值在哪里设置。它们是否设置在thelibr/version.h。
其次,我也不清楚上面给出的代码行何时执行。它们没有放在任何可能被其他文件中编码的其他方法调用的方法中。那么,这些行怎么调用呢?
第三,我看到字符串version 不存在于同一目录中的任何其他文件中。这是否意味着这些文件都没有使用存储在version.cpp 中的代码。我们不应该在其他文件中的某处包含version.h 文件以便能够使用version.cpp 中的代码吗?
第四,如果我们在version.cpp中设置major和minor变量的值,这些变量会在其他地方可见吗?这让我很惊讶,因为我们不使用任何像 global 或 external 这样的词。
【问题讨论】:
标签: c++ variables include visibility