Condividi tramite


Commenti

I commenti iniziano con due barre (//) e continuano fino alla fine della riga. Tali commenti di fine riga possono essere visualizzati ovunque nel codice sorgente. Q# attualmente non supporta i commenti di blocco.

Commenti sulla documentazione

I commenti che iniziano con tre barre, ///, vengono trattati appositamente dal compilatore quando vengono visualizzati prima di una dichiarazione di tipo o chiamabile. In tal caso, il relativo contenuto viene preso come documentazione per il tipo definito o chiamabile, come per altri linguaggi .NET.

All'interno di /// commenti, il testo da visualizzare come parte della documentazione dell'API viene formattato come Markdown, con parti diverse della documentazione indicata da intestazioni denominate appositamente. Come estensione di Markdown, è possibile includere riferimenti incrociati a operazioni, funzioni e tipi di struct in Q# usando @"<ref target>," in cui <ref target> viene sostituito dal nome completo dell'oggetto di codice a cui si fa riferimento. Facoltativamente, un motore di documentazione può supportare anche estensioni Markdown aggiuntive.

Per esempio:

/// # Summary
/// Given an operation and a target for that operation,
/// applies the given operation twice.
///
/// # Input
/// ## op
/// The operation to be applied.
/// ## target
/// The target to which the operation is to be applied.
///
/// # Type Parameters
/// ## 'T
/// The type expected by the given operation as its input.
///
/// # Example
/// ```Q#
/// // Should be equivalent to the identity.
/// ApplyTwice(H, qubit);
/// ```
///
/// # See Also
/// - Microsoft.Quantum.Intrinsic.H
operation ApplyTwice<'T>(op : ('T => Unit), target : 'T) : Unit {
    op(target);
    op(target);
}

Q# riconosce i nomi seguenti come intestazioni di commento della documentazione.

  • Riepilogo: breve riepilogo del comportamento di una funzione o di un'operazione o dello scopo di un tipo. Il primo paragrafo del riepilogo viene utilizzato per le informazioni al passaggio del mouse. Dovrebbe essere testo normale.
  • Descrizione: descrizione del comportamento di una funzione o di un'operazione o dello scopo di un tipo. Il riepilogo e la descrizione vengono concatenati per formare il file di documentazione generato per la funzione, l'operazione o il tipo. La descrizione può contenere simboli e equazioni in formato LaTeX in linea.
  • Input: descrizione della tupla di input per un'operazione o una funzione. Può contenere sottosezioni Markdown aggiuntive che indicano ogni elemento della tupla di input.
  • Output: descrizione della tupla restituita da un'operazione o da una funzione.
  • Parametri di tipo: sezione vuota che contiene una sottosezione aggiuntiva per ogni parametro di tipo generico.
  • gli elementi denominati: descrizione degli elementi denominati in un tipo di struct. Può contenere sottosezioni Markdown aggiuntive con la descrizione per ogni elemento denominato.
  • esempio: breve esempio dell'operazione, della funzione o del tipo in uso.
  • osservazioni: prosa varie che descrivono alcuni aspetti dell'operazione, della funzione o del tipo.
  • vedere anche: elenco di nomi completi che indicano funzioni, operazioni o tipi di struct correlati.
  • riferimenti: elenco di riferimenti e citazioni per l'elemento documentato.