rror. Поскольку это делает нев

Автор admin Пятница, 8 мая 2009 11:32

rror. Поскольку это делает невозможным добавление null-указателя в контейнер, addSuite() проверяет это условие в каждой из своих проверок; то же происходит и в других функциях, перебирающих вектор с объектами тестов (см. реализацию ниже). Как и в классе Test, операции копирования и присваивания в классе Suite запрещены. //: TestSuite.-Suite.cpp {0} finclude “Suite.h” #include #include finclude using namespace std; using namespace TestSuite; void Suite::addTest(Test* t) throw(TestSuiteError) { // Проверка действительности теста и наличия выходного потока: if (t == 0) throw TestSuiteErrorC”Nul1 test in Suite::addTest”): else if (osptr && !t->getStream()) t->setStream(osptr); tests.push_back(t); t->reset(); } void Suite::addSuite(const SuiteS s) { for (size_t i = 0: i < s.tests.sizeO; ++i) { assert(tests[i]): addTest(s.tests[i]): } void Suite::free() { for (size_t i = 0; i < tests.sizeO; ++i) { delete tests[i]; tests[i] = 0: void Suite::run() { resetO; for (size_t i = 0; i < tests.size(): ++i) { assert(tests[i]): tests[i]->run(); } long Suite::report() const { if (osptr) { lo


Комментарии закрыты.