3
考慮這個片段中的Objective-C的:這行代碼的目的是什麼?
NSString *elementString = nil;
if(elementText != NULL) {
elementString = [NSString stringWithCString:(char*)elementText encoding:NSUTF8StringEncoding];
[elementString self];
xmlFree(elementText);
}
我明白[elementString self]
返回elementString
參考。我的問題是,由於這裏沒有使用返回值,爲什麼要調用[elementString self]
?
在我維護的應用程序中,這種模式在整個XML解析例程中重複了很多次。如果它只發生一次,我只是懷疑有人做了一件愚蠢的事情,但鑑於它的流行,我想知道我錯過了什麼。
編輯:本篤科恩給出的答案是正確的。 elementString
變量沒有被使用過。這種模式的大多數情況都被埋在了幾百行的方法中,我沒有看到它從未被使用過。
你能提供比一個片段嗎?否則,您引用的代碼行只是簡單地抑制編譯器警告。 – 2012-01-09 16:11:49
我從來沒有見過這個。你在哪裏看到它,以至於你認爲它「流行」? – 2012-01-09 16:18:00
@Jonathan Grynspan:當我說'流行'時,我的意思是我在維護這個應用程序。這種模式的實例存在於125個不同的類文件中。 – 2012-01-09 16:27:26