ReSharper C++ vs. Visual Assist
Este documento descreve como o ReSharper C++ difere do Visual Assist da Whole Tomato.
Como os dois produtos são desenvolvidos ativamente, e sua funcionalidade muda regularmente, consideramos essa comparação válida para versões específicas indicadas no cabeçalho da tabela de comparação.
Se você encontrar itens imprecisos nessa tabela, poste um comentário abaixo para nos informar, e atualizaremos a tabela o mais rápido possível.
![]() no Visual Studio 2019 + Visual Assist Build 2024.8 (2537) | no Visual Studio 2022 + ReSharper C++ 2024.3 | |
---|---|---|
Versões com suporte do Visual Studio | Visual Studio 2022 | Visual Studio 2022 |
Visual Studio 2019 | Visual Studio 2019 | |
Visual Studio 2017 | Visual Studio 2017 | |
Visual Studio 2015 | Visual Studio 2015 | |
Visual Studio 2013 | Visual Studio 2013 | |
Visual Studio 2012 | Visual Studio 2012 | |
Visual Studio 2010 | Visual Studio 2010 | |
Visual Studio 2008 | ||
Visual Studio 2005 | ||
Especificações C/C++ com suporte | C/C++ | C/C++ |
C++/CLI | ||
Arquivos de origem CUDA | ||
Detecção de problemas de código | Realce de símbolos não resolvidos | |
Supressão de inspeções de código com comentários | Supressão de inspeções de código com comentários | |
Marcas de medianiz para chamadas recursivas | ||
Correções rápidas para issues de código | ||
Assistência para codificação | ||
Enhanced syntax coloring (6 different identifier kinds) / Símbolos estáveis em itálico / Símbolos locais em negrito | Realce de sintaxe (20 tipos diferentes de identificadores) | |
Extensão automática e criação de stubs de documentação em comentários /**/ e /// de várias linhas ao pressionar Enter | ||
Geração de comentário do Doxygen ao digitar /// | ||
Realce de palavras correspondentes (código e comentários) | ||
Realce automático de saídas de função | ||
Assistência para estilo de código | Formatar depois de colar (as regras de formatação são herdadas do Visual Studio) | Aplicar regras de formatação em qualquer escopo (com o extenso conjunto de regras de formatação do ReSharper C++) |
Aplique estilos de código e remova redundâncias de código em qualquer escopo com limpeza de código | ||
Estilo configurável para diretivas #include no código gerado | ||
Refatorações e transformações de código | ||
Encapsular o campo (com a ação Generate getters and setters) | ||
Adição/remoção de chaves | ||
Negar expressão lógica | ||
Movimentação de definições de função | ||
Movimentação de classe | ||
Converter instância em ponteiro e vice-versa | ||
Simplificar declaração de instância | ||
Classificação de métodos no código-fonte | ||
Promoção do Lambda para Método | ||
Adicionar o especificador = default , = delete , pure ou virtual a uma função | ||
Organização de qualificadores cv | ||
Converter ?: em if , e vice-versa | ||
Converter a diretiva #include de colchete angular no formato entre aspas, e vice-versa | ||
Conversão de chamada em pipe, e vice-versa | ||
Conversão de cláusula em restrição de parâmetro | ||
Converter declaração de definição de tipo em declaração de alias, e vice-versa | ||
Converter em definição de namespace aninhada | ||
Converter tipo de retorno regular em tipo de retorno à direita, e vice-versa | ||
Criar tipo derivado: classe, interface, estrutura, classe de interface, estrutura de interface, classe de referência, estrutura de referência | ||
Inverter operador relacional | ||
Inverter argumentos do operador | ||
Inicializar campo a partir de parâmetro construtor | ||
Inversão da instrução if , inversão da condição ?: | ||
Substituir "auto" por declaração de tipo explícita | ||
Substituir "decltype" pelo tipo subjacente | ||
Substituir "decltype(auto)" por declaração de tipo explícita | ||
Dividir ou juntar declaração com várias declarações | ||
Substituir chamada de macro | ||
Substituir alias de tipo de modelo | ||
Especificar argumentos de modelo explicitamente | ||
Substituir definição de tipo (e, opcionalmente, todas as definições de tipo aninhadas) | ||
Substituição de UNREFERENCED_PARAMETER por [[maybe_unused]] | ||
Conversão de string em string bruta C++11, e vice-versa | ||
Movimentação de restrição de parâmetro de modelo para a cláusula requires | ||
Geração de código | ||
Criar tipo derivado | ||
Snippets/modelos de código | ||
Criar arquivo (precisa ser chamado duas vezes para cabeçalho e cpp) | >Modelos de arquivo incorporados para classe e estrutura (criam o cabeçalho e o cpp de uma só vez) + modelos de arquivo personalizados | |
Strings reservadas /espaços reservados de ambiente em snippets | ||
Navegação e pesquisa | Ir para a declaração (com Goto) | |
Ir para a implementação (com Goto) | ||
Depuração | ||
Desabilitar temporariamente todos os pontos de interrupção habilitados | ||
Associar temporariamente todos os pontos de interrupção ao thread atual | ||
Unreal Engine | ||
Excluir origem de mecanismo da navegação | Exclusão da origem do mecanismo da indexação | |
Suporte para chamadas de procedimento remoto UE4 | ||
Suporte para a framework de testes da Unreal Engine | ||
Testes de unidade | Assistência para testes de unidade para as estruturas Google Test, Catch 2.5, Boost.Test e doctest | |
Gerenciamento de configurações | ||
Diversos | ||
GUI localizada (chinês, japonês, coreano) | ||