ReSharper C++ 2025.2에서는 최근 완성된 C++26 표준의 초기 언어 기능 세트가 지원됩니다. 이제 활성화된 빌드 구성을 전환하지 않고도 완벽한 코딩 지원을 통해 #if로 블록 처리된 코드를 쉽게 편집할 수 있습니다. 이번 릴리스에서는 오랫동안 기다려온 기능인 Out-of-Process(프로세스 외부) 모드의 첫 공개 테스트 버전을 제공합니다. 이 모드에서는 ReSharper 작업 대부분이 별도의 프로세스로 이동됩니다.
ReSharper C++ 2025.2에서는 최근 완성된 C++26 언어 표준에 대한 지원이 시작되었습니다. 최신 릴리스에는 다음과 같은 새로운 C++ 기능에 대한 지원이 포함되어 있습니다.
_을 사용하여 변수의 이름을 지정하면 [[maybe_unused]] 속성이 묵시적으로 적용됩니다.= delete("reason"): 더 나은 오류 진단을 위해 삭제된 함수에 선택적 메시지를 추가합니다.
C 개발자를 위해 ReSharper C++는 C11의 _Atomic 타입과 C23 표준의 10진수 부동 소수점 타입 접미사 및 _BitInt(N)에 대한 지원을 추가합니다.
여러 플랫폼을 대상으로 개발하거나 복잡한 셰이더를 작성하는 경우, 현재 빌드 구성에서 활성화되지 않은 코드를 편집하기가 얼마나 번거로운지 알 것입니다. ReSharper C++ 2025.2를 사용하면 이런 번거로움은 과거의 일이 됩니다.
#if로 블록 처리된 코드를 ReSharper가 처리하는 방식을 근본적으로 개선했습니다. 코딩 지원 기능 전체를 이제 비활성화된 전처리기 블록에서 사용할 수 있습니다. 프로젝트 설정을 중단하거나 전환하지 않고도 다양한 플랫폼 또는 빌드 구성에서 코드를 리팩터링, 탐색 및 편집할 수 있습니다.
ReSharper 2025.2는 Microsoft Visual Studio에서 ReSharper를 Out-of-Process로 실행할 수 있도록 지원하는 최초의 안정적인 릴리스입니다. 오랫동안 기다려 온 이 아키텍처 변경은 ReSharper 프로세스를 Visual Studio 프로세스에서 분리하여 향후 더 나은 안정성과 성능을 위한 토대를 마련합니다.
Out-of-Process 모드로 전환하려면, ReSharper의 Options(옵션) | Environment(환경) | Products & Features(제품 및 기능)로 이동한 후, Run ReSharper in separate process(별도 프로세스로 ReSharper 실행) 옵션을 선택하세요. IDE를 재시작하지 않고도 변경 사항을 적용하고 ReSharper를 다시 초기화하려면, Save and restart(저장 후 재시작) 버튼을 클릭합니다.
전역 상수를 참조하는 식별자를 이제 새로운 색상 범주로 강조 표시하여 일반 변수와 시각적으로 구별할 수 있습니다.
ReSharper C++ 2025.2는 OpenMP #pragma 지시문의 변수 참조를 이해합니다. 즉, 이러한 참조는 이제 탐색에서 지원되고, Find Usages(사용 위치 찾기)로 찾아낼 수 있으며, Rename(이름 변경) 리팩터링 중에 업데이트됩니다.
이제 매크로 인수 내의 함수 호출 시 Parameter info(매개변수 정보)가 함수 시그니처를 올바르게 표시합니다.
C++20 표준의 변경 사항을 지원하기 위해 typename 키워드 사용에 대한 검사를 업데이트했습니다. 또한, 코드 생성 및 문서화 액션 사용 시 이제 C++23의 추론된 this 매개변수가 올바르게 처리됩니다.
이제 헤더의 선언 순서와 일치하도록 소스 파일의 정의를 자동으로 정렬할 수 있습니다. 한 번만 정렬하려면 특정 함수, 파일 또는 전체 프로젝트에 대해 새로운 Sort definitions by the order of declaration(선언 순으로 정의 정렬) 컨텍스트 액션을 사용하세요. 계속 적용하려면 해당 구문 스타일 설정을 사용하세요. 그러면 ReSharper C++가 검사를 통해 불일치 항목을 경고하고 Code Cleanup(코드 정리) 중에 정의를 정렬합니다.
두 가지 업데이트를 통해 C++ 명명 검사가 향상되었습니다. 첫째, 이제 람다를 포함하는 변수에 대해 특정한 명명 스타일을 정의할 수 있습니다. 둘째, 클래스 템플릿 인수 추론 가이드가 이제 클래스와 구조체에 대해 설정한 명명 규칙을 올바르게 따르는지 검사합니다.
새로운 서식 지정 도구 설정을 사용하면 생성자 이니셜라이저에서 콜론 앞의 공백을 구성할 수 있습니다.
이제 Find Usages(사용 위치 찾기) 창에서 비상수 멤버 함수에 대한 호출을 읽기-쓰기 사용 위치로 분류하여 읽기 전용 작업과 수정 작업을 쉽게 구분할 수 있게 했습니다.
File Structure(파일 구조) 창에는 키워드와 식별자에 대한 구문 강조 표시가 추가되어 가독성이 개선되었습니다.
override를 Ctrl+클릭하여 기본 함수로 이동하는 것처럼 이제 virtual 키워드를 Ctrl+클릭하면 재정의 함수로 빠르게 이동할 수 있습니다.
요소 색인 힌트가 배열뿐만 아니라 이제 std::initializer_list 타입의 인수에도 제공됩니다. 이는 ReSharper | Options(옵션) | Environment(환경) | Inlay Hints(인레이 힌트) | C/C++ | Aggregate Initialization(집계 초기화) 설정 페이지에서 구성할 수 있습니다.
이제 인플레이스 리팩터링이 인레이 힌트와 함께 표시되어 찾기가 더 쉬워지고 JetBrains IDE와의 일관성이 높아졌습니다. 표시 방식은 ReSharper | Options(옵션) | Environment(환경) | Editor(에디터) | Appearance(모양)에서 구성할 수 있습니다.
Blueprint 내부에서 코드가 사용되는 위치를 보여주는 ReSharper C++ 기능이 UINTERFACE를 구현하는 Blueprint를 지원하도록 확장되었습니다.
BlueprintGetter 및 BlueprintSetter 메타데이터의 메서드 이름에 대한 코드 완성 기능을 추가했습니다.
Unreal Engine 개발을 위한 독립 실행형 크로스 플랫폼 IDE에 관심이 있다면 Rider를 사용해 보세요. Rider와 ReSharper C++의 Unreal Engine 지원이 일치하도록 조정되어 Rider 2025.2 업데이트에서도 동일한 개선 사항을 기대할 수 있습니다.
ReSharper C++는 이제 Visual Studio의 기본 스텝 필터와 통합되었습니다. 이에 따라 C++ 디버거가 *.natstepfilter 구성 파일에 정의된 단계별 실행 규칙을 따릅니다.
ReSharper C++는 이제 Visual Studio 2022에서 기본적으로 64비트 버전의 MSBuild를 사용하여 프로젝트 모델을 읽습니다. 이를 통해 특히 Unreal Engine 5.6을 사용하는 솔루션에서 대규모 프로젝트를 로드할 때 발생하는 안정성 문제가 해결됩니다.
이제 CMake 및 Open Folder 프로젝트의 빌드 타깃에 포함되지 않은 소스 파일에서 ReSharper C++ 기능을 사용할 수 있습니다. 단, 코드 색인에서는 성능상의 이유로 이러한 파일이 여전히 제외됩니다.
이번 릴리스에 도입된 다른 모든 변경 사항을 알아보려면 ReSharper의 새로운 기능 페이지를 살펴보세요.