Tricky interview subject for C++

SR is acting as a captured-variable-restorer. When it goes out of scope it restores some value that it previously captured.

The constructor will do two things: capture a reference, and capture the value of that reference. The destructor will restore the original value to that reference.

class SR
{
public:
  SR(int& var) : capture(var), value(var) {}
  ~SR() { capture = value; }

private:
  int& capture;
  int value;
};

Edit: Just a guess, but I assume SR is supposed to stand for ScopeRestorer?

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)