【问题标题】:Core Graphics Opaque type, what are they and how?核心图形不透明类型,它们是什么以及如何?
【发布时间】:2015-10-29 16:23:01
【问题描述】:

我正在学习 Core Graphics,尤其是学习 CGContextRef。我的问题是关于不透明数据类型的语法和实现细节(如果它们是已知的)。我知道诸如 CGContextRef 之类的不透明类型是对内存中某些底层结构的引用(指针?),并且它是不透明的,因为该结构的细节对开发人员是隐藏的。

所以如果我有一个这样声明的变量:CGContextRef context = UIGraphicsGetCurrentContext(); 为什么上下文不需要在它之前使用“*”来表示这是一个引用类型/指针?这种句法奇点的语义意义是什么?

【问题讨论】:

    标签: ios core-graphics opaque-pointers


    【解决方案1】:

    按住 Command 键单击符号 CGContextRef 以跳转到其在 CGContext.h 中的定义,您会明白原因:

    typedef struct CGContext *CGContextRef;
    

    您不必在context 变量之前放置*,因为*CGContextRef 类型定义的一部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-26
      • 2020-12-12
      • 2015-01-27
      • 1970-01-01
      • 2014-11-15
      • 2011-07-04
      • 1970-01-01
      • 2016-12-18
      相关资源
      最近更新 更多