2013-07-07 2 views
14

Qual è il significato del markup //! [n] (n = 0, 1, 2 ...) nei sorgenti C++/QML nei progetti di esempio Qt?//! [0] nel codice sorgente Qt

Ad esempio:

//! [0] 
GLWidget::GLWidget(Helper *helper, QWidget *parent) 
    : QGLWidget(QGLFormat(QGL::SampleBuffers), parent), helper(helper) 
{ 
    elapsed = 0; 
    setFixedSize(840, 400); 
    setAutoFillBackground(false); 
} 
//! [0] 

//! [1] 
void GLWidget::animate() 
{ 
    elapsed = (elapsed + qobject_cast<QTimer*>(sender())->interval()) % 1000; 
    repaint(); 
} 
//! [1] 

//! [2] 
void GLWidget::paintEvent(QPaintEvent *event) 
{ 
    QPainter painter; 
    painter.begin(this); 
    painter.setRenderHint(QPainter::Antialiasing); 
    helper->paint(&painter, event, elapsed); 
    painter.end(); 
} 
//! [2] 
+0

sono solo commenti. – billz

+4

Scopo della documentazione molto probabile. – chris

risposta

23

Nonostante l'errore comune, questo è qDoc sintassi, non doxygen. Questo commento è a scopo di documentazione nel Progetto Qt per contrassegnare gli snippet di esempio da rendere così. Non è ben documentato, ma here puoi trovare il codice corrispondente che implementa questa funzione.

Come utente finale di Qt, non è necessario gestirlo troppo se non si inizia a contribuire al progetto Qt stesso o si sta tentando di riutilizzare qdoc per il proprio progetto, il che sarebbe certamente strano a questo punto .