如果语法extern是
extern <type> <name>;
Run Code Online (Sandbox Code Playgroud)
extern如果我有一个未命名的单用结构,我该怎么办?
struct {
char **plymouthThemes;
char *plymouthTheme;
} global;
Run Code Online (Sandbox Code Playgroud)
我试过了
extern global;
Run Code Online (Sandbox Code Playgroud)
没有任何类型,它不起作用.
或者,我必须命名结构吗?
您需要命名您的结构并将其放在.h文件中,或者在每个使用全局的源文件中手动包含该定义.像这样
///glob.h
struct GlobalStruct
{
///char** ...
///
};
///glob.cpp
#include "glob.h"
struct GlobalStruct global;
///someOtherFile.cpp
#include "glob.h"
extern struct GlobalStruct global;
Run Code Online (Sandbox Code Playgroud)