Novidades do ReSharper C++ 2025.2

O ReSharper C++ 2025.2 adiciona o suporte a um conjunto inicial de recursos de linguagem do padrão C++ 26, recentemente finalizado. Agora você pode facilmente editar código dentro de blocos excluídos com #if, com os recursos de assistência à codificação totalmente disponíveis para você, sem precisar mudar a configuração ativa de build. Esta versão também traz a primeira demonstração pública do muito aguardado modo "fora do processo", que move a maior parte do trabalho do ReSharper para um processo separado.

Recursos da linguagem

O ReSharper C++ 2025.2 inicia nosso trabalho no suporte ao padrão de linguagem C++ 26, recentemente finalizado. Esta última versão inclui o suporte aos seguintes novos recursos do C++:

  • Amigos variádicos: conceda amizade a todas as classes em um pacote de parâmetros de modelos.
  • Variáveis placeholder: nomeie variáveis com _ para aplicar implicitamente o atributo [[maybe_unused]].
  • = delete("reason"): adicione uma mensagem opcional às funções excluídas, para um melhor diagnóstico de erros.
  • Atributos para associações estruturadas: especifique atributos para associações estruturadas individualmente, não apenas para a declaração inteira.

Para os desenvolvedores em C, o ReSharper C++ adiciona o suporte aos tipos _Atomic do C 11, além de _BitInt(N) e dos sufixos para tipos de ponto decimal flutuante do padrão C 23.

Trabalho com código inativo

Se você desenvolve para diversas plataformas ou programa shaders complexos, conhece a frustração de tentar editar código que está inativo na sua configuração atual de build. Com o ReSharper C++ 2025.2, essa frustração ficou no passado.

Melhoramos fundamentalmente a forma como o ReSharper trata o código em blocos excluídos com #if. Agora todo o conjunto de recursos de assistência à codificação fica disponível em blocos inativos de pré-processamento. Refatore, navegue e edite código em diferentes plataformas e configurações de build, sem precisar parar para mudar as configurações do seu projeto.

Modo Out-of-Process Prévia Pública

Temos o prazer de anunciar que o ReSharper 2025.2 é a primeira versão estável a incluir suporte para executar o ReSharper fora do processo com Microsoft Visual Studio. Essa mudança arquitetural tão aguardada estabelece as bases para melhor estabilidade e desempenho no futuro, pois desacopla o processo do ReSharper do Visual Studio.

Para alternar para o modo Out-of-Process, acesse Options | Environment | Products & Features no ReSharper e selecione a opção Run ReSharper in separate process. Clique no botão Save and restart para aplicar as alterações e reinicializar o ReSharper sem precisar reiniciar a IDE.

Assistência para codificação

Agora está disponível uma nova categoria de cores para realçar identificadores que se referem a constantes globais, tornando possível distingui-las visualmente das variáveis normais.

O ReSharper C++ 2025.2 compreende referências a variáveis em diretivas #pragma do OpenMP. Isso significa que agora essas referências têm suporte em recursos de navegação, são detectadas por Find Usages e atualizadas durante a refatoração Rename.

Agora, Parameter info mostra assinaturas de funções corretamente ao ser invocado em uma chamada a função dentro de um argumento de macro.

As inspeções sobre o uso da palavra-chave typename foram atualizadas para darem suporte às alterações feitas pelo padrão C++ 20. Além disso, agora as ações de geração de código e de documentação lidam corretamente com o parâmetro deduzido this do C++ 23.

Estilo de sintaxe

Agora você pode ordenar as definições em um arquivo de código-fonte na mesma ordem das declarações do cabeçalho. Para ordenar apenas uma vez, use a nova ação de contexto Sort definitions by the order of declaration em uma determinada função, em um arquivo ou no projeto inteiro. Para aplicar a ordenação continuamente, habilite a configuração correspondente de estilo de sintaxe. O ReSharper C++ avisará você de quaisquer discrepâncias através de uma inspeção e classificará as definições durante Code Cleanup.

Aperfeiçoamos a inspeção de nomeação no C++ com duas atualizações. Primeira, agora você pode definir um estilo específico de nomeação para variáveis que contenham um lambda. E segunda, agora os guias de dedução de argumentos de modelos de classes são validados corretamente conforme as regras que você tiver estabelecido para classes e structs.

Uma nova configuração do formatador permite configurar espaços antes dos dois pontos em um inicializador de construtor.

Navegação

Agora a janela Find Usages classifica as chamadas de funções-membros não constantes como usos de leitura e escrita. Isso deve ajudar você a separar operações somente de leitura das que fazem modificações.

Para melhorar a legibilidade, a janela File Structure adiciona o realce de sintaxe para palavras-chaves e identificadores.

Agora você pode dar um Ctrl+clique em uma palavra-chave virtual para navegar rapidamente até as funções de override, de forma semelhante a como um Ctrl+clique em um override salta até a função de base.

Dicas de inserção

Agora estão disponíveis dicas de índices de elementos para argumentos do tipo std::initializer_list, além de arrays. Você pode configurar essas dicas na página de configurações ReSharper | Options | Environment | Inlay Hints | C/C++ | Aggregate Initialization.

Agora as refatorações no próprio local aparecem como dicas de inserção, tornando-as fáceis de descobrir e consistentes com os JetBrains IDEs. Você pode configurar a aparência delas em ReSharper | Options | Environment | Editor | Appearance.

Unreal Engine

O suporte do ReSharper C++ à exibição dos locais onde o seu código está sendo usado em Blueprints foi ampliado para dar suporte a Blueprints que implementam uma UINTERFACE.

Adicionamos a complementação de código para nomes de métodos em metadados de BlueprintGetter e BlueprintSetter.

Se você tiver interesse em um IDE multiplataformas independente para desenvolvimento com Unreal Engine, considere o Rider. O suporte para Unreal Engine no Rider e no ReSharper C++ está alinhado, e você pode esperar as mesmas melhorias na atualização do Rider 2025.2.

Integração com o Visual Studio

Agora o ReSharper C++ se integra aos filtros de depuração passo a passo nativos do Visual Studio. Como resultado, agora o depurador de C++ respeitará as regras de depuração passo a passo que você tiver definido nos arquivos de configuração *.natstepfilter.

Agora o ReSharper C++ usa como padrão a versão de 64 bits do MSBuild no Visual Studio 2022 para ler o modelo do projeto. Isso resolve problemas de confiabilidade ao carregar projetos muito grandes, especialmente em soluções que usam o Unreal Engine 5.6.

Agora você pode usar os recursos do ReSharper C++ em arquivos de código-fonte não incluídos em nenhum alvo de build em projetos do CMake e Open Folder. Esses arquivos ainda são excluídos da indexação de código, por razões de desempenho.

Confira as Novidades no ReSharper para saber mais sobre as outras alterações introduzidas nesta versão.