2013-03-30 4 views
0

는 나는 나는 그것이 the_begin에 의존하기 때문에 the_size 매크로가 the_begin없이 사용하지되어 있는지 확인하고 싶습니다 두 매크로매크로 의존성을 어떻게 확인할 수 있습니까?

#define the_begin begin = 0 
#define the_size n - begin 

을 정의했습니다.

그러한 의존성을 확인할 수 있습니까?

+5

발에 몸을 담글 수있는 엄청난 고통스러운 냄새가납니다. – Zeta

답변

4

begin 변수를 사용하여 종속성이 이미 암시 적으로 도입되었습니다. 보다 고유 한 이름을 지정하면 오용되지 않도록 할 수 있습니다.

물론 매크로는 일반 텍스트로 확장되므로 100 % 확신 할 수 없습니다. 특별히 고안된 텍스트는 매크로의 효과를 모방 할 수 있습니다. 매크로가 그 때문입니다.

모두 당신이하고있는 일은 입니다. 아주 좋지 않은 아이디어입니다. 이와 같은 매크로는 독자가 코드를 이해할 수있는 능력에 직접적으로 부정적인 영향을 미칩니다. 특별히은 매크로이기 때문에 어떤 것으로도 확장 될 수 있으며 실행 된 최종 코드는 에 쓰여진 내용이에 반영되지 않습니다.

디버깅이 오래 걸리는 좋은 방법입니다.

+0

+1 :이 매크로를 확실히 확인하는 유일한 방법은 매크로 내에서 매크로를 만드는 것입니다. 전처리 기가 문서를 다시 구문 분석하지 않기 때문에 가능한 한 알 수 없습니다. 그러나 매크로는 텍스트 확장과 같은 매크로입니다. 만약 그들이 다른 한편으로 튜링 완결 된 언어라면 ... – Zeta

+0

나는 결코 좋은 프로그래머가 될 수 없다고 생각한다. x ( – Fabricio

+0

rest asured, 이것은 내가 시작했을 때 쓰는 쓰레기와 비교하여 알 수 없다.) 해피 코딩! – slezica

관련 문제