gpt4 book ai didi

objective-c - 我如何在 Objective-C 中传递(按值)结构?

转载 作者:搜寻专家 更新时间:2023-10-30 20:12:52 24 4
gpt4 key购买 nike

这个让我发疯了!我有一个结构:

typedef struct{
int a;
}myStruct;

然后我有:

myStruct tempStruct;

我试图将结构传递给一个类方法,其实现是:

- (void) myFunc:(struct myStruct)oneOfMyStructs{};

我这样调用方法:

[myClass myFunc:(struct myStruct)tempStruct];

编译器提示“请求转换为非标量类型”。我只想将结构传递给类方法,但语法让我有点困惑。我是 Objective-C 的新手。如果您能看到我哪里出错了,请告诉我。我也无法通过引用传递,所以如果你能帮我解决这个问题,那就太好了!

谢谢!

最佳答案

因为您已经将 typedef 编辑为 myStruct,所以您不需要(确实不能)包含 struct 关键字在函数签名或调用中:

typedef struct tag_myStruct
{
int a;
}
myStruct;

- (void) myFunc:(myStruct) x {}

[myClass myFunc:tmpStruct];

应该足够了。 (比较所有采用 NSRect 之类的 Cocoa 函数。)

关于objective-c - 我如何在 Objective-C 中传递(按值)结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2751792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com