В моем проекте есть устаревшая библиотека, в которой указатель NULL рассматривается как пустая строка.
Но когда я получаю возвращаемые данные из std :: wstring, как это,
std::wstring strData;
const wchar* pStr = strData.c_str();
ASSERT(NULL == pStr); // ASSERT!!
pStr не NULL, ауказатель на точку wstring.
Могу ли я заставить std :: string возвращать NULL, когда у него нет строковых данных?Теперь я обертываю каждую переменную-член str следующим образом:
const wchar* GetName() { // I hate this kinds of wrapping function
if (m_Name.empty())
{
return NULL;
}
return m_Name.c_str();
}
Моя рабочая среда - Visual Studio 2008 sp1 в Windows
Заранее спасибо.