2011-12-09 79 views
0

我有这些C++类:生成类图的工具?

class sales{ 
private: 
    float dollar[3]; 
public: 
    void getData(float f1,float f2, float f3){ 
     dollar[0]=f1;// sales of first month 
     dollar[1]=f2;// sales of second month 
     dollar[2]=f3;// sales of third month 
    } 
    void putData(){ 
     int count=0; 
     while(count!=3){ 
     cout<<dollar[count]<<"\t$"<<endl; 
     count++; 
     } 
    } 
}; 


class publication:public sales{ 
private: 
    string PubName; 
    int PubYear; 
public: 
    void SetName(string s){ 
     PubName=s; 
    } 
    string GetName(){ 
     return PubName; 
    } 
     void SetYear(int y){ 
     PubYear=y; 
    } 
    int GetYear(){ 
     return PubYear; 
    } 
}; 

class book:public publication{ 
private: 
    string Author; 
public: 
    void SetAuthor(string a){ 
     Author=a; 
    } 
    string GetAuthor(){ 
     return Author; 
    } 


}; 

class tape:public publication{ 
private: 
    string singer; 
public: 
    void SetSinger(string s){ 
     singer=s; 
    } 
    string GetSinger(){ 
     return singer; 
    } 


}; 

我想自动生成的类图,有没有在网上做的有用的工具?

回答

3

StarUML有一个逆向工程选项,它将根据您的源代码生成UML图(它是免费的,但不在线)。但是通常你应该在编写任何代码之前制作一个图表。

2

使用doxygen它很容易使用,它为您提供了开箱即用的图形,并且非常适合记录您的代码 - 最重要的是:它是免费的。

+0

忘记了 - 好的呼吁doxygen - 它的便宜然后我的回答:-) –

0

我个人用户的Enterprise Architect这可能是比你更需要的,但你可以尝试的ArgoUML:

ArgoUML home page

如果使用Web Start的链接,这几乎就像一个在线工具。