> wchar型のポインタが要求されたときに暗黙で処理できるように
要求されていないんじゃないすか?
↓これだとちゃんと動くから。
#include <iostream>
#include <string>
using namespace std;
class String {
wstring _string;
public:
String(const wchar_t* pStr) : _string(pStr) {}
operator const wchar_t*() { return _string.c_str(); }
friend const wchar_t* Print(const String&);
};
const wchar_t* Print(const String& str) {
return str._string.c_str();
}
int main() {
String str = L"hoge";
wcout << static_cast<const wchar_t*>(str) << endl; // 明示的にキャストする
wcout << Print(str) << endl;
}