Spostarsi all'interno del codice C++ in Visual Studio

Visual Studio offre una suite di strumenti che consentono di esplorare la codebase in modo rapido ed efficiente.

Aprire un file incluso

Fare clic con il pulsante destro del mouse su una direttiva #include e quindi scegliere Passa al documento. In alternativa, selezionare F12 con il cursore sulla riga per aprire il file.

Screenshot dell'opzione di menu Vai a documento più C più nel contesto di alcune istruzioni di inclusione.

Attiva/disattiva file di codice/intestazione

È possibile spostarsi tra un file di intestazione e il file di origine corrispondente. Fare clic con il pulsante destro del mouse in un punto qualsiasi nel file e scegliere Attiva/disattiva file di codice/intestazione. In alternativa, è possibile selezionare CTRL+K, CTRL+O.

Vai a definizione/Vai a dichiarazione

È possibile passare alla definizione di un elemento di codice con un clic con il pulsante destro del mouse nell'editor e scegliere Vai a definizione oppure selezionando F12. È possibile passare a una dichiarazione in modo analogo usando il menu di scelta rapida visualizzato facendo clic con il pulsante destro del mouse oppure premendo CTRL+F12.

Screenshot delle opzioni visualizzate quando si fa clic con il pulsante destro del mouse su un elemento di codice. Include Vai a definizione, Visualizza definizione e Vai a dichiarazione.

Vai

Go A fa riferimento a un set di funzionalità di spostamento che forniscono un risultato specifico in base ai filtri specificati.

È possibile aprire Vai a con CTRL+,. Questa azione crea una casella di ricerca sul documento che si sta modificando.

Screenshot della casella di ricerca visualizzata quando si apre Vai a. È disponibile una casella di testo per i termini di ricerca e i filtri per tipi, file recenti e così via.

Vai a include questi filtri di ricerca:

  • Vai a riga (CTRL+G): passa rapidamente a una riga diversa nel documento corrente.
  • Vai a tutti (CTRL+,) o (CTRL+T): i risultati della ricerca includono tutti gli elementi seguenti.
  • Vai al file (CTRL 1, F): cerca i file nella soluzione.
  • Vai al tipo (CTRL 1, T): i risultati della ricerca includono:
    • Classi, struct ed enumerazioni.
    • Interfacce e delegati (solo codice gestito).
  • Vai al membro (CTRL 1, M): i risultati della ricerca includono:
    • Variabili globali e funzioni globali.
    • Variabili membro di classe e funzioni membro.
    • Costanti.
    • Elementi di enumerazione.
    • Proprietà ed eventi.
  • Vai al simbolo (CTRL 1, S): i risultati della ricerca includono:
    • Risultati di Vai al tipo e Vai al membro.
    • Tutti i costrutti di linguaggio C++ rimanenti, che includono macro.

Quando si richiama per la prima volta Vai a con CTRL+, Vai a tutti viene attivato senza filtri sui risultati della ricerca. È quindi possibile selezionare il filtro desiderato usando i pulsanti accanto alla casella di ricerca. Richiamare un filtro specifico usando i tasti di scelta rapida corrispondenti. Questa operazione apre la casella di ricerca Vai a con il filtro preselezionato. Tutti i tasti di scelta rapida sono configurabili.

Per applicare un filtro di testo, avviare la query di ricerca con il carattere corrispondente del filtro seguito da uno spazio. (Vai alla riga può facoltativamente omettere lo spazio. Questi filtri di testo sono disponibili:

  • Vai a tutti: (nessun filtro testo)
  • Vai alla riga numero: :
  • Vai al file: f
  • Vai al tipo: t
  • Vai al membro: m
  • Vai al simbolo: #

L'esempio seguente mostra i risultati di un'operazione Vai al file con il filtro "f":

Screenshot dei risultati di Vai a file. L'utente ha digitato

Per vedere l'elenco dei filtri testo digitare ? seguito da uno spazio. È anche possibile accedere ai comandi Vai a con il menu Modifica. Si tratta di un altro modo per rammentarsi dei principali tasti di scelta rapida di Vai a.

Screenshot del menu Vai a con opzioni come Vai a riga (CTRL+G), Vai al file (CTRL+1, CTRL+F) e altro ancora.

Trova o Cerca nei file

È possibile eseguire una ricerca di testo per qualsiasi elemento nella soluzione con Trova (CTRL+F) o Cerca nei file (CTRL+SHIFT+F).

Trova può essere applicato a una selezione, al documento corrente, a tutti i documenti aperti, al progetto corrente o all'intera soluzione. È possibile usare espressioni regolari e testo normale. Evidenzia automaticamente, inoltre, tutte le corrispondenze nell'IDE.

Screenshot della finestra di dialogo Trova. L'utente ha cercato il canale. Le evidenziazioni gialle nel file mostrano tutte le posizioni in cui viene trovato Channel.

Cerca nei file è una versione più potente di Trova che consente di visualizzare i risultati nella finestra Risultati ricerca. È possibile cercare le dipendenze del codice esterne, filtrare per tipi di file e altro ancora.

Screenshot della finestra di dialogo Trova e sostituisci. La pagina Trova nei file è selezionata. Le opzioni vengono visualizzate per la corrispondenza tra maiuscole e minuscole, l'intera parola e così via.

È possibile organizzare i risultati di Cerca nei file in due finestre e accodare insieme i risultati di più ricerche. Selezionare un risultato per passare alla posizione corrispondente nel file.

Screenshot che mostra un elenco dei risultati della ricerca trova nei file contenenti testo corrispondente alla stringa di ricerca e a un estratto di ogni corrispondenza.

Per altre informazioni, vedere Cerca nei file nella documentazione di Visual Studio.

Trova tutti i riferimenti

Per trovare tutti gli utilizzi di un simbolo nella codebase, posizionare il cursore sul simbolo o subito dopo, fare clic con il pulsante destro del mouse e quindi scegliere Trova tutti i riferimenti. È possibile filtrare, ordinare o raggruppare i risultati in molti modi diversi. I risultati vengono popolati in modo incrementale. Sono classificati come letture o scritture per aiutare a distinguere che cosa fa parte della soluzione rispetto a cosa appartiene a intestazioni di sistema o altre librerie.

Screenshot di Trova tutti i risultati dei riferimenti che mostra la riga in cui è stato trovato il simbolo, il file e il progetto in cui si trova e così via.

È possibile raggruppare i risultati in base alle categorie seguenti:

  • Progetto, quindi definizione
  • Solo definizione
  • Definizione, quindi progetto
  • Definizione, quindi percorso
  • Definizione, progetto, quindi percorso

Filtrare i risultati

Per filtrare i risultati, passare il mouse su una colonna e selezionare l'icona del filtro che viene visualizzata. È possibile filtrare i risultati dalla prima colonna per nascondere elementi quali i riferimenti a stringhe e commenti che non è necessario visualizzare.

Screenshot delle opzioni di filtro. Include Confermato, Non confermato, In commento e non elaborato. Ognuno mostra il numero di risultati applicabili a tale categoria.

  • Risultati confermati: riferimenti di codice effettivi al simbolo cercato. La ricerca di una funzione membro denominata Size, ad esempio, restituisce tutti i riferimenti a Size che corrispondono all'ambito della classe che definisce Size.

  • Risultati non confermati: questo filtro è disattivato per impostazione predefinita perché mostra i simboli i cui nomi corrispondono ma non sono riferimenti effettivi al simbolo che si sta cercando. Se si dispone di due classi ognuna delle quali definisce una funzione membro denominata Size, ad esempio, e si esegue una ricerca di Size su un riferimento da un oggetto Class1, tutti i riferimenti a Size provenienti da Class2 verranno visualizzati come non confermati.

  • Risultati non elaborati: le operazioni Trova tutti i riferimenti possono richiedere tempo per essere completate su codebase di dimensioni maggiori, quindi l'elenco Risultati mostra i risultati "non elaborati" qui. Per i risultati non elaborati la corrispondenza al nome del simbolo cercato è stata confermata, ma non è stato ancora appurato se si tratta di riferimenti effettivi. È possibile attivare questo filtro per ottenere risultati più rapidi. Alcuni risultati potrebbero non essere riferimenti effettivi.

Ordinare i risultati

È possibile ordinare i risultati in base a qualsiasi colonna selezionando la colonna. Per passare dall'ordine crescente all'ordine decrescente e viceversa, selezionare di nuovo la colonna.

È possibile passare alla definizione di un tipo in un file o ai membri del tipo usando la barra di spostamento che si trova sopra la finestra dell'editor.

Screenshot della barra di spostamento sopra la finestra dell'editor. Mostra cryptlib > ChannelSwitch > ChannelMessageSeriesEnd().

Vedi anche