是否可以使用printf来打印类的值?
class example
{
public:
int x;
example(int in) : x(in) {}
}
void printf(example object)
{
printf(object.x);
}
有没有办法正确地做到这一点? 当我这样做时,我会遇到细分错误, 但是当我使用“ example&object”时,它说
错误:无法将“ object&”类型的非常量左值引用绑定到 “对象”的右值
当我放入“ const example&object”时,它说
将“ const example”作为“ this”参数传递会丢弃限定符
注意: 我已经做过std :: cout(操作符重载<<),并且可以,但是我只想尝试使用printf
我也试图做到
std::cout<<object.x;
当我这样做时,它会自动在int的前面添加换行符(如下所示):
example a(5);
printf("the value is: %i", a) ;
结果:
the value is:
5