The Computer Science Faculty at Sonoma State University is establishing formatting standards for C/C++ programs, written for courses in the department.
Doxygen, generates both html and Latex documentation from C/C++ programs. "Doxygen is the de facto standard tool for generating documentation from annotated C++ sources, but it also supports other popular programming languages such as C, Objective-C, C#, PHP, Java, Python, IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL and to some extent D." For the most part, Doxygen creates materials analogous to Javadocs for the Java language.
SSU CS Style Guide for C/C++ (version 0.4)
The Doxygen program documentation package
Doxygen relies upon the software package graphviz for generating impages for calling diagrams, class diagrams, and file dependencies.
The use of Doxygen and graphviz for program documentation is available at Using Doxygen with graphviz—the Basics
C++ code for a School Directory of students, faculty and staff
Class | Header File | Implementation File | Notes |
---|---|---|---|
Entry | Class Entry.h | Class Entry.cpp | Base class for a directory entry |
Student | Student.h | Student.cpp | Derived class of Entry for a student |
Faculty | Faculty.h | Faculty.cpp | Derived class of Entry of a faculty member |
Staff | Staff.h | Staff.cpp | Derived class of Entry of a staff member |
SchoolDirectory | — — — | SchoolDirectory.cpp | Application: collection of entries |
— — — | — — — | Makefile | Use make for compilation |
created April 29, 2022 revised April 30, 2022 revised July 23, 2022 reorganized August 14-18, 2022 expanded with calling diagrams January 9-12, 2023 |