Novedades de ReSharper C++ 2025.1

ReSharper C++ 2025.1 mejora las capacidades de evaluación de constexpr y añade la compatibilidad con nuevas extensiones del lenguaje GNU para contribuir al desarrollo multiplataforma. Otras actualizaciones incluyen la nueva refactorización Inline Macro, la mejora de la compatibilidad con GoogleTest y la compatibilidad de Clang-Tidy con la plataforma ARM. Los desarrolladores de Unreal Engine también disfrutarán de una mejor utilización de la memoria en proyectos con un gran número de Blueprints.

Funcionalidades del lenguaje

ReSharper C++ 2025.1 incorpora la compatibilidad con varias extensiones nuevas del lenguaje GNU, como las siguientes:

  • Condicionales con operandos omitidos
  • Directivas #import
  • Tipos de coma flotante _Float16, __bf16 y __float128
  • Etiquetas locales
  • Sintaxis del rango inicializador designado

Además, ReSharper C++ admite ahora los tipos decimales de coma flotante de C23.

Hemos mejorado las capacidades del motor de evaluación constexpr. ReSharper C++ puede ahora evaluar funciones constexpr que contengan declaraciones switch, declaraciones if con un inicializador, vinculaciones estructuradas e inicialización predeterminada trivial. También se puede evaluar el operator== predeterminado de C++20.

Unreal Engine

Nos hemos centrado en optimizar la utilización de la memoria de las funcionalidades relacionadas con Blueprint en ReSharper C++ 2025.1. Dado que los datos almacenados en caché se descargan en el disco, los proyectos con un gran número de Blueprints gozarán de una reducción significativa del uso de memoria, lo que mejorará el rendimiento general.

Además, ReSharper C++ ahora reconoce y resalta las macros de reflexión UMETA y UPARAM, para proporcionar finalización de código y documentación sobre herramientas tanto para las macros como para sus atributos.

Si le interesa un IDE independiente y multiplataforma para el desarrollo de Unreal Engine, considere Rider. La compatibilidad con Unreal Engine en Rider y ReSharper C++ está alineada, y puede esperar las mismas mejoras en la actualización de Rider 2025.1.

Refactorización Inline Macro

La nueva refactorización Inline Macro le permite sustituir fácilmente todos los usos de una macro en su código. La refactorización también informará de posibles usos en los cuerpos y en los argumentos de las macros que deban revisarse manualmente.

Asistencia a la codificación

La acción Switch Header/Source mejorada sugiere ahora no solo archivos con nombres coincidentes, sino también archivos que contienen una declaración o definición de una función del archivo actual para facilitar la navegación.

Las referencias a funciones dentro de atributos __declspec(property) ahora se resaltan correctamente, se detectan mediante Find Usages y se actualizan durante la refactorización Rename.

Una nueva inspección de Redundant forward declaration detecta declaraciones anticipadas de clase duplicadas dentro del mismo archivo y ofrece un arreglo rápido para limpiarlas.

Clang-Tidy

ReSharper C++ 2025.1 actualiza el Clang-Tidy integrado a Clang 20, aportando las últimas comprobaciones y mejoras de la última versión de LLVM. Esta actualización también mejora la compatibilidad con la plataforma ARM e incluye un binario Clang-Tidy integrado para Windows ARM.

Las comprobaciones de Clang-Tidy se agrupan ahora por su prefijo en la página de configuración de Inspection Severity, lo que facilita la navegación a comprobaciones específicas y la activación o desactivación rápida de grupos enteros de comprobaciones.

GoogleTest

ReSharper C++ 2025.1 aporta varias actualizaciones a la compatibilidad con GoogleTest. Al ejecutar pruebas parametrizadas por valores y tipos, los casos de prueba para valores y tipos específicos se agrupan ahora bajo su respectiva prueba parametrizada, lo que hace que los resultados de las pruebas sean más estructurados y legibles.

Las pruebas parametrizadas se descubren ahora desde el código fuente sin necesidad de ejecutarlas. De este modo, ahora puede utilizar los iconos del medianil y las acciones contextuales para ejecutar conjuntos de pruebas completos y pruebas parametrizadas individuales directamente desde el editor.

Eche un vistazo a las Novedades de ReSharper para conocer el resto de los cambios introducidos en esta versión.