The following code example is taken from the book
C++ Move Semantics - The Complete Guide
by Nicolai M. Josuttis,
Leanpub, 2020
The code is licensed under a
Creative Commons Attribution 4.0 International License.
// raw code
#include <iostream>
#include <string>
class IntString
{
private:
int val; // value
std::string sval; // cached string representation of the value
public:
IntString(int i = 0)
: val{i}, sval{std::to_string(i)} {
}
void setValue(int i) {
val = i;
sval = std::to_string(i);
}
//...
void dump() const {
std::cout << " [" << val << "/'" << sval << "']\n";
}
};