2014-04-25 1 views
3

Windows는 파일에 대해 대소 문자를 구분하지 않지만 Linux는 민감합니다. Linux로 개발할 때 Windows 팀이 걱정하지 않는다는 것을 알게되면 정말 짜증이납니다.Include에 Visual Studio 대/소문자를 구분하는 방법이 있습니까?

Visual Studio에서 포함 파일에 대/소문자를 구분하도록 강제하는 방법이 있습니까?

Linux 서버에서 모든 커밋 후 컴파일을 수행하고 개발자에게 알리는 솔루션에 대해 읽었지만 수행 할 수 없습니다. Visual Studio에서 대/소문자를 구분하도록 강제하는 방법이 필요하므로 개발중인 Windows 팀에서 수정할 수 있습니다.

+1

컴파일러와 아무런 관련이 없습니다. Windows에서는 파일 시스템이 대소 문자를 구분하지 않습니다. Linux에서이 문제를 해결하는 일반적인 방법은 모든 파일 이름을 소문자로 만들어 케이스를 기억할 필요가 없도록하는 것입니다. 물론 Windows에서도 잘 작동합니다. –

답변

4

대소 문자는 컴파일러에 의존하지 않고 기본 파일 시스템 에 의존합니다. 따라서 Linux는 파일 시스템이 Windows 상자에 원격으로 마운트되어 있고 인 경우 대소 문자를 구분하지 않을 수 있으며 그 반대 인 경우 입니다. Windows 상자에서 대소 문자를 구분하도록하려면 유일한 해결책은 파일 시스템을 유닉스 계열의 에 원격 마운트하는 것입니다.

리눅스에서 개발 한 다음 Windows로 이동하는 경우 문제가되지 않습니다. 그 반대 인 것은 입니다. 그리고 유일하게 실제적인 해결책은 정의하는 것입니다. 그리고 엄격하게 명명 규칙을 시행하십시오. 어쨌든 코드에 대해 이 필요합니다 (C++는 대소 문자를 구분하지 않으므로). 따라서 클래스가 FxTrade 인 경우 코딩 규칙은 이 Fx이고 FX이 아니라고 주장해야합니다. 이러한 편의는 C++ 코드에 적용되어야하며 그렇지 않은 경우에는 매번 코드를 조회해야하고, 소스 코드에서이를 적용하는 동일한 코드 검토에서 파일 이름을 적용해야합니다.

(그리고 그것은 가치가 무엇인지, 그것이 svn FXTrade.cpp FxTrade.cpp Windows에서하지 작업을 수행하기 때문에, 서브 버전에서 이러한 오류 를 해결하는 건 쉽지 위해, 당신은 다른 이름으로 이동해야, 그때 커밋 한 다음

+2

감사합니다. Windows가 insensitive.Conventions 매우 민감한 경우에도 Visual Studio에서 대/소문자를 구분하도록 강제하는 방법을 찾고있었습니다. 모두가 그 다음에 오는 경우 매우 유용합니다. –

+0

@PauGuillamon 규칙에 관해서는 잘 모릅니다. 내 의견은 주로 파일 이름을 포함하여'Fx'와'FX' 사이에 좋은 혼합이 있었던 프로젝트와'FxTrade.h '와'FXTrade.h'를 포함하는 파일에 대한 개인적인 경험에서 비롯된 것입니다. . 그리고 저는 그것을 리눅스에 이식하는 데있어 교장의 한 사람이었습니다. (좋은 점은 Windows 빌드를 담당하는 사람들은 이름의 변형이 나쁜 것이라는 점에 동의했기 때문에 Windows에서 작동하더라도 수정해야합니다.) –

관련 문제