Зловое обходное решение включает ключевое слово «изменчивое». На самом деле быть злым остается как упражнение для читателя. Или смотрите здесь: http://www.ddj.com/cpp/184403758