아무도 다음과 같은 이유를 말해 줄 수 있습니까? "사용하지 않은 변수 str"을 경고합니다. SetAccessibilityLabelForView는 MACRO입니다.iOS : MACRO 내의 변수를 사용하는 문제
NSString *str = [NSString stringWithFormat:dynString, index];
SetAccessibilityLabelForView(myView, str);
dynamicString은 "dynamic%d"
과 같은 싱글 톤 클래스로 설정됩니다.
매크로 RUN_TESTS true 또는 false하지만 다른 부분을 제거한 경우 다음 경고가 사라질 때
#if RUN_TESTS
#define SetAccessibilityLabelForView(view, label) view.accessibilityLabel = label
#else
#define SetAccessibilityLabelForView(view, label)
#endif
경고는 경우 모두에 온다!
내가 경고를 제거하려면 다음을 사용하여 시도했다
나에게 ERROR 제공SetAccessibilityLabelForView(myView, [NSString stringWithFormat:dynString, index])
"기능과 같은 매크로 호출을 제공 너무 많은 인수를"!
은 그 때 나는 RUN_TESTS에 해당하는 경우 RUN_TESTS FALSE하지만 오류 "예상을 ']"줄 때
#if RUN_TESTS
#define SetAccessibilityLabelForView(view, label, ...) view.accessibilityLabel = label
#else
#define SetAccessibilityLabelForView(view, label, ...)
#endif
지금 같은 라인 작동, 다음에 내 매크로를 변경! 휴!
누군가 나를 도와 줄 수 있습니까? 두 경우 모두 작동하는 매크로를 얻고 싶지만 RUN_TESTS가 FALSE 인 경우 매크로에 의해 생성 된 줄을 무시하고 싶습니다.
포스트 매크로 코드하십시오
[편집]
마지막으로 나는 .. 형식의 문자열을 지원하는 다른 매크로를을 writting 더 나은 솔루션을
사용 나왔다 – Stavash
매크로 때문에 경고하는 경우에 놀랄 것입니다. 그러나 어쨌든 나는 질문을 편집했습니다. – applefreak
나는 놀랍다. 나는 "레이블"을 사용하지 않기 때문에 다른 옵션을 생각해 냈다. 나는 그 주위를 얻을 수 있습니까? – applefreak