PBL XCODE C++ TOTO结构TOTO 我正在使用XCODEX.在MaCOS x0.62.上进行C++项目的研究。

PBL XCODE C++ TOTO结构TOTO 我正在使用XCODEX.在MaCOS x0.62.上进行C++项目的研究。,xcode,macos,struct,g++,typedef,Xcode,Macos,Struct,G++,Typedef,我试着在windows上编译代码,没有任何问题,我想Linux正在工作,但我现在没有 我的问题是xcode不接受此类指令: struct direction { double x; double y; double z; double t; }; typedef struct direction direction; 这是我的错误: /Users/sbarbier/dev/xcode/Infographie/TP9光线跟踪/光线跟踪方向。h:22:0/Users/sbarbier/dev/x

我试着在windows上编译代码,没有任何问题,我想Linux正在工作,但我现在没有

我的问题是xcode不接受此类指令:

struct direction {
double x;
double y;
double z;
double t; };

typedef struct direction direction;
这是我的错误:

/Users/sbarbier/dev/xcode/Infographie/TP9光线跟踪/光线跟踪方向。h:22:0/Users/sbarbier/dev/xcode/Infographie/TP9光线跟踪/光线跟踪方向。h:22:error:将“Direction”的含义从“typedef struct Direction”更改为“Direction”


我正在使用GCC4.2,没有任何更改。这段代码适用于所有平台,有人能帮我吗?

这不是C。在C中,要使用结构,必须使用关键字struct:

通常情况下,这种情况会得到缓解:

typedef struct { int i; } some_struct;
some_struct myStruct;

在C++中,这不是必需的。direction已经有了一个类型,然后您试图创建一个同名的新类型,这很糟糕。只需在声明或定义结构或类时使用C++,结构和类就可以使用。你可能想在C中使用TyBufff,但是C++中没有任何意义。
typedef struct { int i; } some_struct;
some_struct myStruct;