【发布时间】:2011-02-14 15:49:07
【问题描述】:
这个让我发疯了!我有一个结构:
typedef struct{
int a;
}myStruct;
那么我有:
myStruct tempStruct;
我正在尝试将结构传递给一个类方法,其实现是:
- (void) myFunc:(struct myStruct)oneOfMyStructs{};
我这样调用方法:
[myClass myFunc:(struct myStruct)tempStruct];
编译器抱怨“请求转换为非标量类型”。我想做的就是将一个结构传递给一个类方法,但是语法让我有点困惑。我是 Objective-C 的新手。如果你能看出我哪里出错了,请告诉我。我也无法通过引用传递,所以如果你能帮我解决这个问题,那就太好了!
谢谢!
【问题讨论】:
-
听起来
tempStruct在范围内实际上是一个标量类型(int,char,...)。检查您是否收到类似 "Conversion fromintto non-scalar typemyStruct" 之类的消息。
标签: objective-c struct pass-by-value