Почему `basic_ios :: swap` выполняет только частичную замену?

C ++ 11 §27.5.4.2 / 21:

void swap (basic_ios & rhs);

Эффекты: Состояния * this и rhs должны быть заменены, за исключением того, что rdbuf () должен возвращать то же значение, что и перед вызовом функции, а rhs.rdbuf () должен возвращать то же значение, что и перед вызовом функции.

Чем полезна эта частичная подкачка?

Может ли она вызвать проблемы?

18
задан Cheers and hth. - Alf 16 November 2011 в 06:57
поделиться