Создание диаграммы классов C ++ - PullRequest
5 голосов
/ 06 февраля 2009

В проектах Visual Studio .NET вы можете добавить «Диаграмму классов» в проект, которая визуализирует все пространства имен, классы, методы и свойства. Есть ли способ сделать это для проектов Win32 (не .NET) C ++? Либо через саму Visual Studio, либо с помощью стороннего инструмента?

Ответы [ 7 ]

3 голосов
/ 02 апреля 2009

Если у вас есть решение Visual Studio 2008, состоящее из нескольких проектов C ++, вы можете создать только одну диаграмму классов для каждого проекта.

Например, если у вас есть один проект приложения, связанный с 10 проектами библиотеки, вам придется сгенерировать 11 отдельных диаграмм классов.

Есть два способа обойти это, ни один из которых не приятен:

  1. Cram весь источник в одном проекте.
  2. Создайте диаграмму классов для одного проекта (возможно, приложения), а затем перетащите файлы из всех других проектов в диаграмму классов.

Более подробное исследование возможностей конструктора классов Visual Studio приведено в Конструктор классов Visual C ++ .

Учитывая слабую поддержку диаграмм классов C ++ в Visual Studio, вам, вероятно, лучше воспользоваться коммерческим инструментом, если вы хотите чего-то большего, чем простой список ваших классов. WinTranslator от Excel Software, возможно, стоит посмотреть, и кто-то, с кем я работаю, использует Source Insight .

3 голосов
/ 06 февраля 2009

Большинство инструментов UML должны уметь это делать. Я знаю, что Sparx Systems Enterprise Architect делает.

1 голос
/ 27 декабря 2011

Если ваш проект основан на c ++, то сначала вы должны нарисовать диаграмму классов c ++. Если ваш проект содержит n подпроектов, то вы должны нарисовать n + 1 диаграмму классов.

В основном диаграмма классов содержит

  1. переменные класса.
  2. функции класса.
  3. Отношение между классами.

Вы должны поместить все свойства, которые требуются для класса, в диаграмму классов. Выглядит как таблица (графическая структура) с полем типа 3 строки.

Строка 1. Имя класса (если это диаграмма объекта, она должна и должна быть подчеркнута).
Строка 2. Список переменных (одна переменная в одной строке).
Строка 3. Список функций (одна функция в одной строке)

Вы должны установить связь между одним классом и другим классом.

1 голос
/ 07 апреля 2009

Дешевым способом было бы документировать ваш источник с помощью Doxygen и позволить этому инструменту создавать диаграммы классов для вас.

1 голос
/ 07 февраля 2009

Конструктор классов не предназначен для C ++, даже в VS 2008. Вам будет лучше с более специализированным инструментом. Он работает для простых проектов, в которых не используются шаблоны. Кроме того, приобретите игрушечные игрушки для моделирования от codeplex.

Попробуйте выполнить частичную специализацию и посмотрите, как она объединяет все в одну фигуру.

1 голос
/ 07 февраля 2009

Если вы используете Visual Studio, диаграммы классов для C ++ не были правильно реализованы до Visual Studio 2008.

1 голос
/ 07 февраля 2009

У меня VS2008 SP1 Professional и диаграммы классов работают нормально для C ++ WIN32 и Makefile проектов.

...