‘xxx’ used as the name of the previous parameter rather than as part of the selector

在使用XCode編寫代碼的時(shí)候聲明一個(gè)方法,如果出現(xiàn)“‘xxx’ used as the name of the previous parameter rather than as part of the selector”警告,這個(gè)警告雖然不會影響程序的運(yùn)行,但是在閱讀代碼和編譯時(shí),總會出現(xiàn)一個(gè)黃色的按鈕,總是讓人看著不那么舒服。
例如:- (NSString *)setString:(NSString *)string1:(NSString *)string2 。聲明這個(gè)方法后就會出現(xiàn)警告,這樣的警告通常是由聲明方法而不對制定參數(shù)進(jìn)行描述引起的--第一個(gè)參數(shù)和冒號之間沒有參數(shù)描述或者空格。當(dāng)然,如果按照正常的編程習(xí)慣,這種警告是不會出現(xiàn)的。但是在進(jìn)行快速迭代的開發(fā)過程中,在時(shí)間緊迫的情況下,不排除這樣的情況出現(xiàn)的可能(粗心大意或者省懶事兒)。
接下來就是解決辦法:
1、用空格隔開:- (NSString *)setString:(NSString *)string1 :(NSString *)string2
(按照正常的編程習(xí)慣不推薦,閱讀性太差/(ㄒoㄒ)/~~)
2、增加參數(shù)描述
- (NSString *)setString:(NSString *)string1 String:(NSString *)string2
(強(qiáng)烈建議這樣聲明)
3、在相關(guān)位置添加
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wmissing-selector-name"
// 在這聲明方法
#pragma clang diagnostic pop
4、在target的 build settings下 搜索other warning flags 添加:
-Wmissing-selector-name
方法4可以解決整個(gè)項(xiàng)目中的這樣的問題,還可以用這樣的辦法去掉其他警告,只需替換掉添加的字符串。

雖然警告對程序運(yùn)行沒有影響,但是記得有位老師說過,警告就是錯(cuò)誤。所以說編程時(shí)一定要細(xì)心,遵循正確的編程語言語法和習(xí)慣。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容