gpt4 book ai didi

objective-c - 为什么 NSRect 和 CGRect 是不兼容的类型?

转载 作者:太空狗 更新时间:2023-10-30 03:34:42 24 4
gpt4 key购买 nike

好的,我对错误感到困惑:

error: incompatible type for argument 1 of 'initWithFrame:'

这是造成它的原因:

operationLabel = [[NSTextField alloc] initWithFrame:CGRectMake(0, self.frame.size.height / 2 - (40 * 3), self.frame.size.width, 100)];

定义是:

- (id)initWithFrame:(NSRect)frameRect;

所以第一个参数是 NSRect,让我们检查一下:

typedef CGRect NSRect;

它怎么会导致错误呢? 它们是相同的类型,但名称不同!

最佳答案

除了 zoul 的回答之外,我想我会提到 Apple(从 10.5 开始)的两个辅助函数(宏?):

NSRect NSRectFromCGRect(CGRect cgrect)
CGRect NSRectToCGRect(NSRect nsrect)

关于objective-c - 为什么 NSRect 和 CGRect 是不兼容的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3538347/

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