Это работает для меня, когда я пытаюсь снова инициализировать modal.js после вызова reportsTable
:
function refreshmodal(){
//modal.js content
}
function reportsTable(){
//.......codes
refreshmodal();
}
Хорошо, я нашел ответ... это, кажется, ошибка с реализацией gcc 4.0 Apple. Используя gcc 4.2 это работает как ожидалось, и надлежащее размещение следующее:
-(void)someMethod:(id) __unused someParam;
Это документируется в информацию о версии Objective C, если кому-либо интересно: http://developer.apple.com/releasenotes/Cocoa/RN-ObjectiveC/index.html#//apple_ref/doc/uid/TP40004309-DontLinkElementID_6
Как примечание, Ваш ответ скомпилирует, Louis, но поскольку я заявил в своем вопросе, что это ничего на самом деле не сделает или подавит неиспользованное предупреждение, выданное компилятором.
РЕДАКТИРОВАНИЕ: Я зарегистрировал отчет об ошибках с яблоком для этого rdar://6366051 .
Общая идиома должна использовать следующее:
#define UNUSED(x) (void)x
void SomeFunction(int param1, int param2)
{
UNUSED(param2);
// do stuff with param1
}
UNUSED(param2)
оператор не генерирует объектного кода, устраняет предупреждения о неиспользуемых переменных и ясно документирует код как не использование переменной.
Я могу скомпилировать следующее очень хорошо:
- (NSString *) test:(__unused NSString *)test {
return nil;
}
Редактирование: На самом деле это не может быть строго вещью дуги:
Phoenix-VI:CouchPusher louis$ cc -c Pusher.m -Wall -Werror
Phoenix-VI:CouchPusher louis$ cc -c Pusher.m -Wall -Werror -Wunused-parameter
cc1obj: warnings being treated as errors
Pusher.m:40: warning: unused parameter ‘test’
Phoenix-VI:CouchPusher louis$
Так - Стена не включает не, включают - Wunused-параметр....
Я думаю, что можно использовать #pragma неиспользованное для маркировки аргументов как неиспользованные. Непротестированный, но можно попробовать что-то как
- (NSString *)test:(NSString *)test {
#pragma unused (test);
return nil;
}
После некоторой борьбы с #pragma я обнаружил, что это
+ (NSString*) runQuery:(id)query name:(NSString*)name options:(NSDictionary*)options
{
#pragma unused(name)
...
}