Compartilhar via


Comentários

Os comentários começam com duas barras (//) e continuam até o final da linha. Esses comentários de fim de linha podem aparecer em qualquer lugar no código-fonte. Q# atualmente não dá suporte a comentários de bloco.

Comentários da Documentação

Os comentários que começam com três barras de avanço, ///, são tratados especialmente pelo compilador quando aparecem antes de uma declaração de tipo ou callable. Nesse caso, seu conteúdo é usado como documentação para o tipo definido ou que pode ser chamado, como para outros idiomas do .NET.

Em /// comentários, o texto a ser exibido como parte da documentação da API é formatado como Markdown, com diferentes partes da documentação indicadas por cabeçalhos especialmente nomeados. Como uma extensão para Markdown, referências cruzadas a operações, funções e tipos de struct em Q# podem ser incluídas usando @"<ref target>," em que <ref target> é substituído pelo nome totalmente qualificado do objeto de código que está sendo referenciado. Opcionalmente, um mecanismo de documentação também pode dar suporte a extensões adicionais do Markdown.

Por exemplo:

/// # 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# reconhece os nomes a seguir como cabeçalhos de comentário da documentação.

  • Resumo: um breve resumo do comportamento de uma função ou operação ou da finalidade de um tipo. O primeiro parágrafo do resumo é usado para obter informações de foco. Deve ser texto sem formatação.
  • Descrição: uma descrição do comportamento de uma função ou operação ou a finalidade de um tipo. O resumo e a descrição são concatenados para formar o arquivo de documentação gerado para a função, operação ou tipo. A descrição pode conter equações e símbolos formatados em LaTeX em linha.
  • de entrada: uma descrição da tupla de entrada para uma operação ou função. Pode conter subseções markdown adicionais que indicam cada elemento da tupla de entrada.
  • de saída: uma descrição da tupla retornada por uma operação ou função.
  • parâmetros de tipo : uma seção vazia que contém uma subseção adicional para cada parâmetro de tipo genérico.
  • Itens Nomeados: uma descrição dos itens nomeados em um tipo de struct. Pode conter subseções markdown adicionais com a descrição de cada item nomeado.
  • Exemplo: um breve exemplo da operação, função ou tipo em uso.
  • Comentários: prosa diversa que descreve algum aspecto da operação, função ou tipo.
  • Consulte Também: uma lista de nomes totalmente qualificados que indicam funções, operações ou tipos de struct relacionados.
  • Referências: uma lista de referências e citações para o item documentado.