[英]“Invalid use of 'this' in non-member function” in objective-c context?
使用Xcode。
在此代碼中(在接口中聲明了func),告訴subj錯誤,它位於帶有'self'的字符串上。
+ (void) run: (Action) action after: (int) seconds
{
[self run:action after:seconds repeat:NO];
}
什么...?
self
是一個實例變量,用於引用當前對象的實例。
您試圖在類級方法+(void)...
中使用它,而self
沒有意義。 嘗試使用共享實例,或將相關類的實例傳遞給方法。
+ (void) run:(Action)action on:(MyClass*) instance after:(int) seconds
{
[instance run:action after:seconds repeat:NO];
}
編輯
我的評論者指出, self
在類級別上下文中確實具有含義,但它指的是類本身。 這意味着您正在嘗試調用如下所示的方法:
[MyClass run:action after:seconds repeat:NO];
您應該針對的目標:
[myClassInstance run:action after:seconds repeat:NO];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.