Способ отключения операторов преобразования?

Есть ли способ отключить оператор преобразования класса? Предположим, что это класс библиотеки, и я не могу изменить исходный код (или заголовки). Я иногда сталкиваюсь с библиотекой, которая кажется умной и определяет преобразования, которые являются глупыми, а иногда и просто опасными.

Например, учитывая это объявление в заголовке, который я не могу изменить:

class TooClever
{
   ...
public:
   operator char const*();
};

Есть ли какой-либо способ (обман разрешен, даже если это зависит от компилятора) я могу запретить использование этого оператора в моем коде?

9
задан edA-qa mort-ora-y 22 April 2011 в 08:01
поделиться