Suppose I need to call a function foo that takes a const std::string reference from a great number of places in my code:
foo
std::string
int foo(const
You could use Boost.Flyweight to make a key-value flyweight from const char* to std::string. I'm not sure about the details, might be that it is enough to use flyweight everywhere.
const char*
flyweight