class Config
{
public:
static int OUTPUT_TO_FILE;
static int NEED_TO_TRAIN;
static int NO_FILE_TRAIN;
static int NEED_TO_TEST;
}
Run Code Online (Sandbox Code Playgroud)
上面是我的header.h文件(我遵循:http://weblogs.asp.net/whaggard/archive/2004/11/05/252685.aspx )
我希望能够做像Config.OUTPUT_TO_FILE = true或variable = Config.NO_FILE_TRAIN这样的事情;
来自任何包含config.h的文件
我想要做的就是清楚,只想在我的所有cpp文件中共享一些变量.
编辑:我在编译时遇到问题:
在我的make文件中,我添加了:
hPif : src/main.o src/fann_utils.o src/hashes.o src/config.o # added the config part
g++ src/main.o src/fann_utils.o src/hashes.o src/config.o -lfann -L/usr/local/lib -o hPif
config.o : src/config.cpp src/config.h
g++ -c src/config.cpp
.
.
.
main.o: src/main.cpp src/config.h src/main.h src/hashes.h
g++ -c src/main.cpp
Run Code Online (Sandbox Code Playgroud)
config.cpp:
#include "config.h"
int OUTPUT_TO_FILE = false;
.
.
.
Run Code Online (Sandbox Code Playgroud)
config.h中:
class Config
{
public:
static int OUTPUT_TO_FILE;
.
.
.
Run Code Online (Sandbox Code Playgroud)
试图通过以下方式致电:
#include "config.h"
...
Config::OUTPUT_TO_FILE = true;
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
Undefined Symbols:
"Config::OUTPUT_TO_FILE", referenced from:
_main in main.o
_main in main.o
Run Code Online (Sandbox Code Playgroud)
标题(Config.h):
#pragma once
class Config
{
public:
static int OUTPUT_TO_FILE;
static int NEED_TO_TRAIN;
static int NO_FILE_TRAIN;
static int NEED_TO_TEST;
};
Run Code Online (Sandbox Code Playgroud)
来源(Config.cpp):
#include "Config.h"
int Config::OUTPUT_TO_FILE = 0;
int Config::NEED_TO_TRAIN = 0;
int Config::NO_FILE_TRAIN = 0;
int Config::NEED_TO_TEST = 0;
Run Code Online (Sandbox Code Playgroud)
用法(any.cpp):
#include "Config.h"
...
int variable = Config::OUTPUT_TO_FILE;
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1527 次 |
| 最近记录: |