powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / гарантия безопасности исключений
4 сообщений из 4, страница 1 из 1
гарантия безопасности исключений
    #34500601
Some123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть ли строгая гарантия безопасности исключений в операторе присваивания в коде ниже?

struct X
{

};

struct Some
{
std::vector<X> vec;

Some()
{
}

Some(const Some& rhs):vec(rhs.vec)
{
}

Some& operator=(const Some& rhs)
{
Some temp(rhs);
vec.swap(temp.vec);
}

};
...
Рейтинг: 0 / 0
гарантия безопасности исключений
    #34500604
daevaorn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Some123Есть ли строгая гарантия безопасности исключений в операторе присваивания в коде ниже?

struct X
{

};

struct Some
{
std::vector<X> vec;

Some()
{
}

Some(const Some& rhs):vec(rhs.vec)
{
}

Some& operator=(const Some& rhs)
{
Some temp(rhs);
vec.swap(temp.vec);
}

};
нет. этот код не скомпилируется
...
Рейтинг: 0 / 0
гарантия безопасности исключений
    #34500702
grieg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Строгая, это гарантирующая отсутствие исключений? Я правильно помню?
Тогда нет, ибо создание копии вектора
Код: plaintext
Some temp(rhs);
требует выделения памяти, а ее может и не быть, тогда, возможно, будет исключение.
Кстати, открой для себя тег SRC :)
...
Рейтинг: 0 / 0
гарантия безопасности исключений
    #34500704
Фотография FasterHarder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
 started in 1983, in 2007 i still on a case!

авторКстати, открой для себя тег SRC :)
+1

некоторые исчо fix - ом ремят, так тоже ненадо :>)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / гарантия безопасности исключений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]