2010-04-18 78 views
1

我在ClassA中有一个结构,并且想要将它分配给ClassB中的同一个结构(这两个结构对于不同的名称是相同的)。 ClassA和ClassB是视图控制器。基本上,我需要将这个结构传递给另一个类。但是,结构似乎不会作为成员公开,这意味着我无法访问它们。这里是ClassA的的结构在它的头文件中声明:分配给不同类中的结构

typedef struct { 
NSString *startDate; 
NSString *endDate; 
NSString *classId; 
} selectedItemsClassAStruct; 

selectedItemsClassAStruct selectedItemsClassA; 

与同为ClassB的(只是ClassA的文字代替)

它不会出现在代码提示ClassB的。我看到这个错误,如果我尝试访问它:

request for member 'selectedItemsClassBStruct' in something not a structure or union 

应该怎么做?

回答

1

你想做的事情叫做重新演绎演员表演或者打字;这意味着将一个结构变成另一个具有相同成员的结构。

例如,Cocoa使用此技巧将NSRect转换为CGRect

我建议阅读关于Matt Gallagher撰写的主题的good post