mirror of
https://github.com/rehlds/rechecker.git
synced 2024-12-27 04:45:29 +03:00
22 lines
345 B
C
22 lines
345 B
C
|
#pragma once
|
||
|
|
||
|
#include <ios>
|
||
|
|
||
|
class IosFlagSaver {
|
||
|
public:
|
||
|
explicit IosFlagSaver(std::ostream& _ios) :
|
||
|
ios(_ios),
|
||
|
f(_ios.flags()) {
|
||
|
}
|
||
|
~IosFlagSaver() {
|
||
|
ios.flags(f);
|
||
|
}
|
||
|
|
||
|
IosFlagSaver(const IosFlagSaver &rhs) = delete;
|
||
|
IosFlagSaver& operator= (const IosFlagSaver& rhs) = delete;
|
||
|
|
||
|
private:
|
||
|
std::ostream& ios;
|
||
|
std::ios::fmtflags f;
|
||
|
};
|