我正在尝试为Android和ios进行跨平台开发。我正在用C ++编写代码,但是当我开始时,我看到xcode在头文件中插入了以下#define
:
#ifndef tutorial_FloatMatrix_h
#define tutorial_FloatMatrix_h
#endif
Tutorial是项目的名称,FloatMatrix.h
是标题的名称。这似乎不便于携带。我通常不会在此类#define
中看到项目名称前置于标题名称。有没有办法让这个#define
的意图在ios和android中运行?这个#define
试图执行的是什么,它有一个名字(即我会google什么)?
答案 0 :(得分:2)
为什么它不便携?只要'tutorial_FloatMatrix_h'是唯一的名称,它就可以与任何C / C ++编译器一起使用。此外,定义称为标题保护,其目的是确保单个翻译单元不包含标题的多个副本(例如.cpp文件)。
答案 1 :(得分:1)
这是限制C源代码中多个头包含的常用方法。 这些代码应该可以移植到任何C编译器。