你可能从来没想过OC中对象的星号应该放左边还是右边

如果你我忽然问你对象前的星号应该靠左还是靠右,你能回答吗?

    UIView* view;
    UIView *view;

这两种写法编译都能通过。但是哪个是规范的写法呢?
要弄明白这个就得简单提提指针了。

*是运算符,可以访问保存在某个地址中的数据

举例:

int *addressOfI

addressOfI是一块内存地址的值,*addressOfI 表示取出addressOfI是这块地址中的数据。
前面的类型int告诉了编译器这个地址内存储的数据是什么类型,这里是int。
连起来看这就表示了一个int类型的变量。

在c语言允许在一行代码中声明多个变量

  float* b,c

如果这么写的话,c的类型会是float,不是float *。所以*号写在前面有可能让人造成误解。
所以正确答案是写在右边。

    UIView *view;

那么为什么我们没分清在写了这么久也没出什么问题呢?

因为。。。。。。

Xcode会提示你!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ———————————————回答好下面的足够了---------------------------------...
    恒爱DE问候阅读 1,768评论 0 4
  • iOS面试小贴士 ———————————————回答好下面的足够了------------------------...
    不言不爱阅读 2,023评论 0 7
  • __block和__weak修饰符的区别其实是挺明显的:1.__block不管是ARC还是MRC模式下都可以使用,...
    LZM轮回阅读 3,407评论 0 6
  • 100天读100本书第44天,今天读的书名叫赞美改变你。毒舌女崔玉婷最讨厌一天到晚嘴上抹蜜的梦瑶,她不明白...
    梦境里的冰雪阅读 161评论 0 1
  • Glance 架构 如上图所示,Glance架构相对比较简单 Glance-api glance-api 对外提供...
    drfung阅读 574评论 0 1