zoukankan      html  css  js  c++  java
  • 关于error:Cannot assign to 'self' outside of a method in the init family

    今天在编写model时,突然发现了“Cannot assign to 'self' outside of a method in the init family”问题。后通过搜索解决了此问题,记录之。

    有时候我们重写父类的init方法时不注意将init后面的第一个字母写成了小写,在这个方法里面又调用父类的初始化方法(self = [super init];)时会报错,错误信息如下:error:Cannot assign to 'self' outside of a method in the init family

    原因:只能在init方法中给self赋值,Xcode判断是否为init方法规则:方法返回id,并且名字以init+大写字母开头+其他  为准则例如:- (id) initWithXXX;

    出错代码:

    - (id) Myinit{
    
      if(self = [super init]) {
        ...
      }
      return self;
    }
    - (id) initwithMy
    
    {
    
      if(self = [super init]) {
        ...
      }
      return self;

    }

    解决方法:

    - (id) initWithMy
    
    {
      if(self = [super init]) {
        ...
      }
      return self;
     }
  • 相关阅读:
    打印出乘法表
    python小练习1
    JavaScript 两个变量互换
    纯css3 画一个小猪佩奇
    箭头函数
    点击获取li下标的几种方式
    再见!!!!!!
    十月一前期
    大家好!!!!!!
    雕刻技
  • 原文地址:https://www.cnblogs.com/JuneWang/p/3848149.html
Copyright © 2011-2022 走看看