https://github.com/xyz347/x2struct может загружать json в clsss или преобразовывать класс в json.
код:
#include
#include
вывод:
opiekun1
Maksym
Zawrotny
maksym@wp.pl
herbatka
opiekun2
Filip
Szatkowski
filip@wp.pl
kawusia
Могло бы быть самым легким переключиться с, Делают на инструмент, который автоматически обнаруживает зависимости. Например, SCons не заставляет Вас перечислить зависимости, но вместо этого автоматически анализирует скомпилированные файлы и ищет, включает. Вы просто указываете, какие файлы должны быть скомпилированы и в который файлы входят который исполняемые файлы. Переключение систем сборки будет легче для того, что Ваши разработчики не, действительно Делают экспертов.
Другая альтернатива, если Вы придерживаетесь с, Делает, должен использовать gcc -M
опция автоматически обнаружить зависимости. Ответ на автоматическое обнаружение C вопрос о зависимостях имеет пример того, как иметь Ваши make-файлы, автоматически обнаруживают зависимости так, чтобы Вы не должны были указывать их вручную.
автосделайте и autoconf комбинация:
http://sources.redhat.com/automake/automake.html#Introduction
еще:
http://sources.redhat.com/automake/automake.html#Why-Autotools
HTH
У нас есть та же проблема на моем рабочем месте. Соединительная линия всегда повреждалась после слияний или регистраций.
Мы настраиваем непрерывную машину сборки integation, которая делает делание чистого приблизительно за 45 минут по сравнению с приблизительно 2 часами на dev машине. Сервер интеграции опрашивает репозиторий SVN каждые 2 часа относительно новых регистраций и запускает делание чистого.
Тем путем мы можем контролировать точно, когда сборка была повреждена, и зафиксируйте ее сразу же. Мы используем Гудзон в качестве нашего непрерывного сервера интеграции, его свободного и с открытым исходным кодом, это - произведение искусства и очень легкий настроить. Плюс Пользовательский интерфейс очень интуитивно, все другие разработчики любят его.
Удачи,
Канонический способ решить это состоит в том, чтобы позволить компилятору автоматически генерировать информацию о зависимости для Вас. Что-то вроде этого (принимающий gcc, Вы захотите проверить свой компилятор на подобные опции),
SOURCES=foo.c bar.c
%.d: %.c
$(CC) $(CFLAGS) -MM $< >$@
include $(SOURCES:.c=.d)
GNU Делает руководство, имеет главу по автоматической генерации предпосылок.
Править: Я обычно рекомендую людям начать использовать CMake, когда у них есть этот вид проблемы.