2010-10-21 14 views
6

Doxygen kullanmaya yeni başlıyorum ve sorunsuz çalışabilmeyi başardım. Sınıflarımı ve yapılarımı belgelemeyi başardım ve HTML dosyalarını mükemmel bir şekilde oluşturuyor. Çalıştığım sorun, main.cpp dosyamı ayrıştırmayacak. Tüm sınıflar ve yapıların kendi .h ve .cpp dosyaları vardır ve bunlar iyi işlemektedir. Main.cpp belgelerini yapmak için Doxygen'i nasıl alabilirim? Programın başladığı ve bittiği yer olan bir .h dosyası yok. Ana için .h dosyasına ne yazacağımı bile bilmiyorum. Windows'da Doxywizard kullanıyorum.Doxygen, işlem yapmayacaktır main.cpp

Düzenleme:

Ben ana bu koymak ve bir ana sayfasını oluşturur:

/** 
@mainpage 

This is a test application. 

@author Alex 
@date 10/21/2010 
@version 1.0 
*/ 

Ama sonra öteye fonksiyon prototipleri Bunu alabilir ve onu çözümlenen almaz vardır dosyanın aşağı : boş

/** 
@brief Error handler for the PDF writer. 

It does nothing. It just has to exist. 
*/ 
void error_handler (HPDF_STATUS error_no, 
        HPDF_STATUS detail_no, 
        void   *user_data) 
{ 
} 
+0

Başlıca belgelere ihtiyaç var mı? Genellikle, sadece birkaç şey ayarlıyordur, belki komut satırını ayrıştıran işlevi çağırıyor ve sonra bazı işlevleri çağırıyor. – delnan

+0

Muhtemelen Doxygen konfigürasyon dosyanızda bulunan bir maske ile ilgilidir. "INPUT" ve "FILE_PATTERNS" yapılandırma değerlerinin içeriğini yükleyebilir misiniz? – ladenedge

+0

Hem "INPUT" hem de "FILE PATTERNS" boş. Temel olarak programı yükledim, projemi buldum ve "Çalıştır" a bastım. Sanırım ana yorumlanmaya gerek yok, ancak aynı dosyada kullanılan ve yorumlanması gereken başka işlevler de var. – alex

cevap

6

Bunu main.cpp'nin üstüne koydum ve işe yaradı. Git rakamı.

/** 
@file main.cpp 
*/ 
+0

Siz, efendim, birkaç saat daha arama yaptım. Çok teşekkürler. Neden bir @file komutunu İHTİYACINIZIN herhangi bir fikriniz var mı? – SolarBear

+1

Nevermind, aşağıdaki cevabıma bakın. – SolarBear

+0

"main.cpp" ye ihtiyacınız yok. @file yeterlidir. Buna ihtiyacınız var, çünkü o dosyada belgelenmiş bir sınıfınız veya yapınız yok. –

2

INPUT ise ve FILE_PATTERNS, geçerli dizinde .cpp dosyaları (ve diğer birçok desen) * aramak gerekir. (Doxygen manual gelen bu.)

sizinki boş olduğundan, ben iki şeyden biri size almıyorsanız main.cpp belgelerine oluyor bekliyoruz:

  1. main.cpp akımı değil dizin. Bunu devre dışı bırakmak için, Doxygen dosyasını hem hem de config dosyanızı ve main.cpp ile çalıştırdığınızdan emin olun.
  2. main.cpp belgelerinizde bir sözdizimi hatası var. Doxygen, bir hatayla karşılaştığı zaman genel olarak iptal etmediği için bu durumun tespit edilmesi zor olabilir - bunun yerine sadece atlıyor. Sorun buysa, dokümanlar satırını oluştururken Doxygen'ın çıktısını tarayın.

Bu fikirlerden hiçbiri sorununuzu çözmezse, daha fazla bilgiye ihtiyacımız olabilir. ls -R'un çıktısı, Doxygen çalışmasının çıkışı vb. İyi şanslar!

+0

ana.cpp, Doxygen'un aradığı klasördedir ve çıktıda herhangi bir hata göstermez, sadece doğru şekilde işleyen diğer sınıflardan gelen uyarılar. Yukarıdaki soruma daha fazla bilgi ekledim. – alex

1

Ben doxygen manual itibaren bu biraz araştırma ... yaptı: Önemli

: küresel fonksiyonları, değişkenler, typedefs, ve çeteleler belgeler sadece dahil edilecektir İçinde bulundukları dosya çıktıları da belgelidir.

İşte işte!