본문 바로가기

Programming/C & C++

[Visual Studio] VS2017에 ClangFormat 적용하기

Visual Studio 2017 15.7 부터 ClangFormat이 지원된다.

메뉴는 Tools -> Options -> Text Editor -> C/C++ -> Formatting 에 있다.

많이 사용되는 애들은 디폴트로 지정할 수 있고 커스텀 파일도 사용할 수 있는 모양이다.

Google, Chromium 등의 스타일을 사용한다면 아래 Tabs 옵션을 수정하면 더 정확하게 사용할 수 있다

근데 MFC 등 Precompiled Headers 를 기본적으로 사용하는 프로젝트에 Chromium이나 Google 스타일을 적용하면 .cpp/.cc 파일의 가장 상단에 위치해야 하는 #include "stdafx.h" 를 자동으로 조정하여 다른 헤더보다 아래쪽에 위치하게 된다. 이걸 해결하는 방법을 찾아보려고 했는데 아마 커스텀 clangforamt 파일을 사용해야 될 것 같은데 그렇기엔 좀 귀찮아서 일단 임시방편으로 사용하고 있는 방법을 소개한다.

cpp 파일의 옵션에서 Advanced 에 보면 Forced Include File 옵션이 있는데 강제로 헤더를 삽입할 수 있는 기능이다. 이걸 이용해서 stdafx.h 를 강제로 넣어주고 해당 파일에서 include를 빼주면 문제가 해결된다.

더 좋은 방법이 있으면 알려주세요...