protocol buffer

https://developers.google.com/protocol-buffers/docs/overview

Protobuf是一種可以實現內存與外存交換的協議接口。可以理解爲一種通信協議.caffe就是使用了這種協議.

protobuf使用前,先編寫proto文件,這是描述我們需要配置參數的數據結構。例如:
// See README.txt for information and build instructions.

package tutorial;  

option java_package = "com.example.tutorial";  
option java_outer_classname = "AddressBookProtos";  

message Person {  
  required string name = 1;  
  required int32 id = 2;        // Unique ID number for this person.  
  optional string email = 3;  

  enum PhoneType {  
    MOBILE = 0;  
    HOME = 1;  
    WORK = 2;  
  }  

  message PhoneNumber {  
    required string number = 1;  
    optional PhoneType type = 2 [default = HOME];  
  }  

  repeated PhoneNumber phone = 4;  
}  

// Our address book file is just one of these.  
message AddressBook {  
  repeated Person person = 1;  
}  

然後用protobuf工具生成接口代碼:
protoc –cpp_out=. addressbook.proto

運行後生成了兩個文件:addressbook.pb.cc 和addressbook.pb.h
包含了操作參數,序列化,反序列化的接口函數.(add_person(), add_phone(), set_number(), set_email(),SerializeToOstream(),ParseFromIstream()等)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章