2016-12-07 84 views

回答

0

沒有區別,NSLog調用帶參數的NSLogv。所以如果你使用NSLog的某些參數,NSLog重新調用NSLogv函數。

0

有一個接受一個名爲NSLogv的va_list的NSLog的變體:

- (void) log:(NSString *)text, ... { 
    va_list args; 
    va_start(args, text); 
    NSLogv(text, args); 
    va_end(args); 
} 

轉發實際...(不使用的va_list)的唯一方法是使用宏。例如:

#define MyLog(f, ...) { \ 
NSLog(f, ##__VA_ARGS__); \ 
[someObject doSomething:f, ##__VA_ARGS__]; \ 
}