имает уникальный физический бл

Автор admin Суббота, 9 мая 2009 11:32

имает уникальный физический блок памяти. В С++ отдельные объекты string могут занимать или не занимать уникальные физические блоки памяти, но даже если хранение лишних копий данных предотвращается благодаря подсчету ссылок, с точки зрения программиста отдельные объекты должны работать так, словно каждый из них хранится в отдельном блоке. Пример: //: СОЗ:StringStorage.h #ifndef STRINGSTORAGE_H #define STRINGSTORAGE_H #include #include #include “../TestSuite/Test.h” using std::cout: using std::endl; using std::string: class StringStorageTest : public TestSuite::Test { public: void runО { string sl(“12345″): // Первая строка может быть скопирована во вторую // или копирование может имитироваться подсчетом ссылок. Создание и инициализация строк С++ 95 string s2 = si; testjsl == s2); // В любом случае эта команда должна изменять ТОЛЬКО si sl[0] = “б’: cout « “si = ” « si « endl; cout « “s2 = ” « s2 « endl: testjsl != s2): } }: #endif // STRINGSTORAGE_H ///:- //: C03:StringStorage.cpp //{L} ../TestSuite/Test #include “StringStorage.h” int mainO { StringStorageTest t: t.runO; return t.re


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