Есть класс
class CMyDelimiter
{
private:
CString m_String;
public:
CSqlDelimiter(CString str):m_String(str){};
CSqlDelimiter(LPCTSTR str):m_String(str){};
CString GetString() const
{
return m_String;
}
};
и есть другой класс у которого перегружен оператор <<, то есть
MyClass& operator<<(LPCSTR value);
MyClass& operator<<(const BSTR value);
MyClass& operator<<(const CMylDelimiter value);
проблема в том, что когда я пытаюсь сделать MyClass m1;m1<<str, где str — CString, то компилятор говорит, что не могу распознать какой оператор нужно вставлять (не может выбрать между первым и третьим). При явном приведении к (LPCTSTR) все нормально. Используется MS VC++ 2003. Заранее благодарен.