2016-12-07 3 views
1

Я следую официальной документации Apple, но я не думаю, что какой-либо релевантный ответ на мой вопрос.Что такое D/B NSLog и NSLogv?

NSLog VS NSLogv 
+0

Это то же самое http://stackoverflow.com/questions/40968210/difference-between-nslog-and-nslogv – Amanpreet

ответ

0

нет различий, NSLog называется NSLogv с параметром. Поэтому, если вы используете NSLog с некоторым параметром, NSLog перезапускает функцию NSLogv.

0

Там есть вариант NSLog, который принимает va_list под названием NSLogv:

- (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__]; \ 
} 
Смежные вопросы