2011-06-19 259 views

回答

26

的「精簡版」的版本是無法序列化或iostream,或者「FileDescriptor」,它不能使用Reflection功能,並...其他功能散射。

我的建議是隻使用lite版本,直到遇到需要完整版本的功能爲止。從一個切換到另一個非常容易。

如果您需要查看lite版本所缺少的列表,我建議您瀏覽<google/protobuf/message.h>。基本上,包含文件的所有內容都是完整版本所獨有的。 (<google/protobuf/message_lite.h>是完整版本#include d) 這裏有一個鏈接: https://github.com/google/protobuf/blob/master/src/google/protobuf/message.h

+0

不要忘了加上'選項optimize_for = LITE_RUNTIME;'你的.proto文件,如果您使用精簡版的版本。 – rustyx

+1

由於[Protocol Buffers v3.0.0](https://github.com/google/protobuf/releases/tag/v3.0.0),不再支持'optimized_for = LITE_RUNTIME'。 – david