Visual Studio 2015에서 이상한 문제가 발생합니다. 사용중인 함수 아래의 매크로를 사용할 때마다 Visual Studio에 정의되지 않은 상태가됩니다. . 이것은 시각적 인 문제 일 뿐이며 컴파일하는 동안 문제를 일으키지 않습니다. 또한 최대 값으로 변수를 사용하는 경우에만 이것이 발생한다는 점을 언급 할 가치가 있습니다. 다음 매크로는 다음과 같습니다'for'매크로가 Visual Studio에서 함수 정의를 찾을 수 없습니다. 2015
#define fiz(MAX_VALUE) for (unsigned int i = 0; i < (MAX_VALUE); i++)
void functionFoo()
{
unsigned int max_val = 10;
fiz(max_val) { // if I use 10 here I don't experience the same issue
/* do stuff */
}
}
편집 : 그래서 내 질문은, 다른 사람의 경험 같은/비슷한 문제가했고, 그들이 수 있다면 그것을 해결하기 위해? Edit2 : 더 검색 할 때 this question을 발견했습니다. Visual Studio 2005 이후로이 문제 (또는 기사와 관련된 성능 관련 디자인 선택)가 존재했음을 알 수 있습니다.이 링크의 솔루션을 따르면 문제가 해결되었습니다.
루프 앞에 'i'를 만들고 루프에서 초기화하십시오. – Jguillot
@Jguillot 빠른 답장을 보내 주셔서 감사합니다. 'i'선언에 관계없이 여전히 동일한 문제가 발생합니다 – AcarX
컴파일러는 무엇을 말합니까? – Jguillot