1

Visual Studio 2010에서 다른 프로젝트의 다른 파일에 대한 일부 전 처리기 지시문 상수를 사용할 수 있습니까? 여기에 내가 할 노력하고있어의 예입니다 : 파일에서다른 프로젝트의 다른 파일에 대한 전처리 지시문 (상수)

는 "1"프로젝트 "A"나는 정의 : TIMEDISPLAYING

#define TIMEDISPLAYING 

"2"파일에 프로젝트에서 "B"나는 확인 TIMEDISPLAYING에 대해 :

#if TIMEDISPLAYING 
     //do something 
#else 
     //do something else 
#endif 

나는 내 사용자 정의 상수를 추가 할 수 있습니다. 비슷한 위치에 솔루션 파일을 추가 할 수 있습니까? 또는 내 모든 사용자 정의 상수를 가져 오는 파일의 다른 유형?

현재 한 클래스에 부울 상수가 정의되어 있지만 상수를 기반으로 컴파일 된 코드를 사용하고 DEBUG로 충분하지 않습니다. 여기 내 마지막 (를) 대체 할 수있는 다른 솔루션

#if DEBUG 
      protected const bool ISTIMEDISPLAYING = 1 == 1; 

      protected const bool ISDATARANDOM = 1 == 0; 

      protected const bool IS_AUTO_LOADING_CHAMP_VENDOR = 1 == 1; 

      protected const bool IS_TESTING_PO = 1 == 0; 
#endif 

있습니까 : DEBUG가 정의되어있는 경우 나의 다음 솔루션은 내 부울 상수를 추가하는 것? 어떤 도움이라도 대단히 감사합니다.

답변

2

코드에서 선언하는 대신 Visual Studio에서 프로젝트 속성의 작성 탭에 조건부 컴파일 기호를 설정할 수 있습니다. 다른 빌드 구성에는 서로 다른 조건부 컴파일 기호가 할당 될 수 있으며 필요한만큼 빌드 구성을 만들 수 있습니다. 이는 관리하기가 더 쉽기 때문에 프로젝트 자체에 저장되기 때문에 어떤 소스 파일을 추가할지 걱정할 필요가 없습니다.

Conditional attribute은 조건부 컴파일 기호를 기반으로 전체 방법을 포함하거나 제외하려는 경우 유용 할 수 있습니다.

+0

아직도 여러 프로젝트에서 어떻게 작동하는지 모르겠습니다. 조건부 속성에 대해서는 알고 있지만 각 프로젝트마다 설정하지 않고 모든 프로젝트에 적용하는 방법을 모르겠습니다. – pqsk

+0

거의 1 년이되었지만 이것이 완벽하다는 것이 밝혀졌습니다. 조언 해 주셔서 감사합니다. 나는 처음에는 그것을 이해하지 못했지만, 지난 달 나는 이것에 관한 문서를 읽는데 약간의 시간을 할애하고 있었고, 나는 이것을 만들고있는 단위 테스트를 위해 이것을 구현했다. 특정 데이터를 사용하여 단위 테스트를 실행하고자 할 때 솔루션의 구성 유형을 변경하기 만하면됩니다. 많은 노력을 기울이지 않아도 모든 것이 완벽하게 실행됩니다. 정말 고마워. – pqsk

+1

위대한, 나는 그것이 당신을 위해 일했기 때문에 기쁘다! –

관련 문제