【发布时间】:2012-12-12 14:20:01
【问题描述】:
我对“msgpack”还很陌生。我正在尝试打包用户定义的类:
MyClass::Pack()
{
msgpack::sbuffer sbuf;
msgpack::pack(sbuf, this);
}
但是编译器 (VC 9.0) 说我
error C2228: left of '.msgpack_pack' must have class/struct/union third_party\msgpack\include\msgpack\object.hpp 218
我找到的唯一方法:
MyClass::Pack()
{
MyClass copy(this);
msgpack::sbuffer sbuf;
msgpack::pack(sbuf, copy);
}
但如果我不想制作副本(例如,操作繁重或需要许多额外资源)怎么办?我可以在没有复印机的情况下做到这一点吗?谢谢。
【问题讨论】: