|
|
|
гарантия безопасности исключений
|
|||
|---|---|---|---|
|
#18+
Есть ли строгая гарантия безопасности исключений в операторе присваивания в коде ниже? 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); } }; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2007, 21:03 |
|
||
|
гарантия безопасности исключений
|
|||
|---|---|---|---|
|
#18+
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); } }; нет. этот код не скомпилируется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2007, 21:07 |
|
||
|
гарантия безопасности исключений
|
|||
|---|---|---|---|
|
#18+
Строгая, это гарантирующая отсутствие исключений? Я правильно помню? Тогда нет, ибо создание копии вектора Код: plaintext Кстати, открой для себя тег SRC :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2007, 22:38 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34500604&tid=2028933]: |
0ms |
get settings: |
14ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
105ms |
get topic data: |
18ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 271ms |
| total: | 495ms |

| 0 / 0 |
