/
niceSOFT
/
swig
Обзор
Документация
Войти
/
niceSOFT
/
swig
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Examples/csharp/nested/example.h
48 строк
1 KB
William S Fulton
Add C++ nested class example
30 ноя 2013, 13:23
30 ноя 2013, 13:23
2d518c6
Код
Авторство
О чём код?
#include <string> /** Design a motor car from various components */ struct MotorCar { /** Information about an opinion of the design of a car component */ struct DesignOpinion { bool itrocks; std::string reason; static int AceDesignCount; static int TotalDesignCount; static int PercentScore(); }; /** Wheels component */ struct Wheels { enum Shape { Round, Square }; Wheels(Shape shape, size_t count); DesignOpinion Opinion(); private: Shape shape; size_t count; }; /** Windscreen component */ struct WindScreen { WindScreen(bool opaque); DesignOpinion Opinion(); private: bool opaque; }; /** Factory method for creating a car */ static MotorCar DesignFromComponents(const std::string &name, const Wheels &wheels, const WindScreen &windscreen); std::string Name() { return name; } /** Get an overall opinion on the car design */ std::string WillItWork(); private: MotorCar(const std::string &name, const Wheels &wheels, const WindScreen &windscreen); std::string name; Wheels wheels; WindScreen windscreen; };