struct MyClass
{
operator const char*()
{
return "hello";
}
};
int main()
{
MyClass obj;
std::cout << obj; // ok
printf("%s\n", obj); // Crash
}
Почему объект operator const char*
не может быть автоматически преобразован в const char* string
в printf
для отображения %s
?Используйте `оператор Const символ *` в Printf
Это просто потому, что в printf-подобных функциях нет типа, и %s
ожидает только массив символов с терминалом 0?
В теге 'C' должен быть светящийся знак. 'C! = C++' – Haris
ОК, я удалил его –
Нет никаких трудностей, просто шутка. – Haris