ReSharper C++ 2024.2 incorpora nuevas funcionalidades de C++23, renueva las descripciones emergentes con información sobre el diseño de tipos y aporta varias mejoras a la refactorización Rename. Para los desarrolladores de Unreal Engine, ReSharper C++ 2024.2 es compatible con las características de los structs e incluye una nueva inspección que detecta las llamadas perdidas a los métodos base.
Prueba gratuita de 30 días disponible
ReSharper C++ 2024.2 es compatible con el operador de subíndice multidimensional. El uso de operator[]
con varios argumentos hace que sea más compatible con los contenedores y las vistas multidimensionales.
Ahora, ReSharper C++ también entiende las directivas del preprocesador #elifdef
y #elifndef
de C++23/C23 que complementan las directivas #ifdef
y #ifndef
existentes.
[assume(
es un nuevo atributo en C++23 que se puede portar y añade una forma de proporcionar información adicional al optimizador utilizando una expresión de argumento. ReSharper C++ ahora analiza el argumento y es compatible con todas las funcionalidades habituales de inteligencia de código que contiene.
Una nueva inspección detecta las llamadas a métodos base que faltan, especialmente en los métodos BeginDestroy
y GetLifetimeReplicatedProps
. La corrección adjunta inserta la llamada Super
necesaria.
Otra nueva inspección marca los usos de IOnlineSubsystem::Get()
y los sustituye por Online::GetSubsystem(this->GetWorld())
.
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 2024.2.
Ahora, las descripciones emergentes con información rápida incluyen información sobre el diseño de los tipos. Basta con pasar el cursor sobre una clase o un campo de clase para comprobar su tamaño y alineación.
Si pasa el cursor por encima de un campo de clase, verá, además, el desplazamiento del campo desde el inicio del objeto y el relleno que se añade después del campo.
Al renombrar un archivo, ahora ReSharper C++ ofrece una nueva opción para renombrar los archivos relacionados con el mismo nombre. Por ejemplo, si renombra un archivo de encabezado, el archivo .cpp
que incluye el encabezado también se renombrará.
Por último, al renombrar un espacio de nombres en un archivo con un nombre que coincida, tiene la opción de renombrar el archivo que lo contiene de forma automática.
Hemos actualizado el paquete binario clang-tidy a Clang 18, lo que añade nuevas comprobaciones y mejoras de la última versión de LLVM.
Similar a la compatibilidad con comentarios NOLINT
en la actualización 2024.1, ReSharper C++ ahora reconoce pragmas include-what-you-use para suprimir la inspección Possible unused #include directive.
Ahora, la opción del menú de inspección Why is ReSharper suggesting this? lleva a las directrices básicas de C++ relacionadas con la inspección de código.
El filtro Base method call está disponible en la ventana Find Results para que pueda filtrar llamadas a métodos base de la lista de usos.
ReSharper C++ ahora incorpora escritura asíncrona, que es parte del trabajo de mejora del rendimiento de ReSharper al permitir que se ejecute fuera de proceso con Visual Studio. Nuestras pruebas internas muestran que habilitar la escritura asíncrona mejora la fluidez al escribir.
ReSharper C++ también mejora la compatibilidad con proyectos CMake en Visual Studio, con lo que se resuelven varios problemas importantes y se mejora el rendimiento al editar código.
Eche un vistazo a las Novedades de ReSharper para conocer el resto de los cambios introducidos en esta versión.
Prueba gratuita de 30 días disponible