objective-c - Objective C 中的 "CG_INLINE CGRect"定义叫什么?

标签 objective-c ios structure parameter-passing cgrect

Objective C 中调用的以下结构是什么,

CG_INLINE CGRect
CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat height)
{
  CGRect rect;
  rect.origin.x = x; rect.origin.y = y;
  rect.size.width = width; rect.size.height = height;
  return rect;
}

我想创建自己的定义来制作一个包含我传递的多个参数的对象。目前我在一个类中使用一个静态方法,它会接受多个参数并返回一个对象。但是 CGRectMake 的这种语法是我可以使用的完美解决方案。 Objective C语法中实际调用的结构是什么?

最佳答案

CGRectMake() 是一个函数。函数是 C 语言的一个特性,并不是 Objective-C 独有的。因此,它们在 Objective-C 中没有专门的名称。它们称为 C 函数。

如果你问的是这个看似神秘的语法:

CG_INLINE CGRect
CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat height)
  1. CG_INLINE 是一个特殊的标记,它只是将函数声明为内联。您可以在这个问题中找到 CG_INLINE 的描述:

    What does CG_INLINE do?

  2. CGRect 是返回类型。接下来的换行符只是空格;在函数定义中的返回类型之后换行是 C 语言中比较常见的代码格式约定。

  3. CGRectMake为函数名。

  4. 接下来是它的参数列表和函数体。

如果你想创建一个函数,你可以将它的定义放在你的 .m 文件中,并在 .h 文件中有一个相应的前向声明。

关于objective-c - Objective C 中的 "CG_INLINE CGRect"定义叫什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10349296/

相关文章:

ios - Xcode 不会将应用程序加载/安装到设备上

c - 了解如何动态创建结构数组并访问其元素

ios - StoreKit框架-更改应用内购买的iTunes商店时未调用回调

ios - 从 objective-c 中的日期数组中分离月份和年份

ios - 将 Firebase 数据库中的数据从 UITableviewCell 传递到下一个 ViewController 未显示

ios - 我应该只使用 canDisplayBannerAds。没有广告横幅 View ?

objective-c - 使用多级指针类型处理 _Nonnull 或 Nullable

objective-c - objective-c 中的 Swift 全局变量和全局函数

c++ - 具有连续内存的结构中的动态数组?

c - 理解指针结构