Форум программистов, компьютерный форум, киберфорум С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
3 / 3 / 0
Регистрация: 17.11.2013
Сообщений: 33

Написать программу, которая по коду строит схему классов

03.02.2014, 20:55. Показов 948. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
задача состоит в том, чтобы написать программу, которая по коду построить схему классов. На начальном этапе хотел считывать код с файла(потом уж всё красиво оформить как полноценную прогу, а пока так), но понял, что считывание слов и строк очень муторно и вообще разочаровался в этой идеи. посоветуйте каким способом можно подойти к решению этой задачи. как бы вы поступили. хочу полностью сам написать, поэтому к фрилансерам не обращаюсь.
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.02.2014, 20:55
Ответы с готовыми решениями:

Написать программу, которая строит дерево Хаффмана
Написать программу, которая строит дерево Хаффмана, записывает двоичные коды Хаффмана для символов, определяет размер дерева (в битах и...

Написать программу, которая строит двоичный каталог
Даны двоичные каталоги Т1 и T2. Написать программу, которая строит двоичный каталог T3, содержащий все пары <индекс, значе- ние>...

Написать программу, которая строит графики функций
Написать программу, которая строит графики непрерывных функций одной переменной. Мне нужны примеры программ, может ссылки сайтов или...

4
 Аватар для Enotniy
101 / 102 / 31
Регистрация: 15.01.2014
Сообщений: 283
03.02.2014, 21:13
klik07, вообще MS Visual Studio отлично справляется с этой задачей ). Если хотите сами, то я предложил использовать регулярные выражения. Считываете весь текст - ищите зарезервированные слова (class). По найденным классам строить граф наследования.
1
3 / 3 / 0
Регистрация: 17.11.2013
Сообщений: 33
03.02.2014, 21:47  [ТС]
мне надо собственную прогу написать) т.е. мой первоначальный подход в принципе верный?)
0
96 / 12 / 3
Регистрация: 10.01.2014
Сообщений: 30
03.02.2014, 22:41
Цитата Сообщение от klik07 Посмотреть сообщение
считывание слов и строк очень муторно и вообще разочаровался в этой идеи
Не обязательно. Вам ведь в конечном счете надо находить только слово class, и для каждого из них искать те классы, которые он наследует. Напишите функцию для решения этого. Впрочем, С++ уже предоставляет готовые функции для подобных задач, а именно по работе с регулярными выражениями.
1
 Аватар для Kuzia domovenok
4264 / 3323 / 925
Регистрация: 25.03.2012
Сообщений: 12,520
Записей в блоге: 1
03.02.2014, 23:55
mf909, именно, что муторно! Си плюс Плюсы предоставляют 100500 фишек с классами, которые все придётся предусмотреть автору.
Даже если он решит ограничиться выуживанием из исходника исключительно имён классов, перед ним встанет множество способов их объявления:
- классы, объявленные как структуры
- классы, объявленные внутри классов и их видимость
- классы, объявленные внутри неймспейсов и их видимость
- проблемы с распознаванием наследования: приватное/публичное, виртуальное, наследование от шаблонного класса, и.т.д.
- отличие самих объявлений классов от их forward declaration
(это к слову о том, что якобы "достаточно произвести поиск по тексту слова class")
- отличие объявлений самих классов и структур от объявлений функций и переменных этого типа (это к слову о том же)
- возможное наличие шаблонов в коде увеличивает этот список проблем в N раз
- и ещё в N раз этот список увеличивается, т.к. я наверняка много всего забыл!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.02.2014, 23:55
Помогаю со студенческими работами здесь

Написать программу, которая строит матрицу бинарного отношения
Написать программу, которая строит матрицу бинарного отношения, определенного на множестве X и выводит её на печать. По построенной...

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

Написать программу, которая строит график параметрической функции
Всем привет. Не могу понять задачу. Используя операторы цикла написать программу, которая строит график параметрической функции {...

Написать программу, которая строит график функции: x=C1*(t-1/2*sin2t)+C2, y=C1*sin^2t
Здравствуйте! помогите пожалуйста написать программу которая строит график функции: x=C1*(t-1/2*sin2t)+C2 y=C1*sin^2t в Делфи...

Бинарное дерево. Написать программу, которая строит Т1 – копию заданного дерева Т
Написать программу, которая строит Т1 – копию заданного дерева Т.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
Lazarus. Таблица с объединением ячеек.
Massaraksh7 21.03.2025
Понадобилась представление на экране таблицы с объединёнными ячейками. И не одной, а штук триста, и все разные. На Delphi я использовал для этих целей TStringGrid, и то, кривовато получалось. А в. . .
Async/await в Swift: Асинхронное программировани­е в iOS
mobDevWorks 20.03.2025
Асинхронное программирование долго было одной из самых сложных задач для разработчиков iOS. В течение многих лет мы сражались с замыканиями, диспетчеризацией очередей и обратными вызовами, чтобы. . .
Колмогоровская сложность: Приёмы упрощения кода
ArchitectMsa 20.03.2025
Наверное, каждый программист хотя бы раз сталкивался с кодом, который напоминает запутанный лабиринт — чем дальше в него погружаешься, тем сложнее найти выход. И когда мы говорим о сложности кода, мы. . .
PostgreSQL в Kubernetes: Подготовка кластера и настройка
Mr. Docker 20.03.2025
Когда доходит до контейнеризации баз данных и особенно таких требовательных к ресурсам системах как PostgreSQL, многие команды до сих пор колеблются, прежде чем перенести их в контейнерную. . .
C++26: Индексирование пакетов и метапрограммиро­вание
bytestream 20.03.2025
Эволюция C++ продолжается стремительными темпами – каждый новый стандарт приносит функциональность, о которой мы мечтали годами. Звучит слишком громко? Если вы когда-либо боролись с вариадическими. . .
Состояние гонки в C#: подводные камни многопоточного программировани­я
UnmanagedCoder 20.03.2025
Что такое состояние гонки? Это ситуация, когда результат программы непредсказуемо меняется в зависимости от порядка выполнения потоков. Проще говоря, два или более потока пытаются одновременно. . .
Next.js для разработки React: преимущества серверного рендеринга
Reangularity 20.03.2025
Next. js решает классическую проблему React-приложений: медленную первоначальную загрузку и плохую индексацию поисковиками. Вместо того чтобы заставлять браузер пользователя выполнять всю работу по. . .
JUnit или TestNG: Выбираем Java-фреймворк для тестирования
Javaican 20.03.2025
История тестовых фреймворков в Java началась в конце 90-х, когда Кент Бек и Эрих Гамма разработали JUnit - инструмент, который перевернул представление разработчиков о модульном тестировании. JUnit. . .
Разбиваем монолит на два микросервиса и реализуем CI/CD
ArchitectMsa 20.03.2025
Когда команда растет, а функциональность монолита расширяется, поддерживать и развивать такую систему становится все труднее. Разработчики начинают тратить много времени на разбор сложных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер