2012-07-07 46 views
-1

我嶄新的一頁的Protobuf我可以使用在客戶端使用.cc原文件,並在服務器端的.java原型文件

我已搜查和了解protobuf的一些事情,我都知道,使用protobuf的包我們能夠在C++,java和python中爲proto文件生成類,甚至我還了解了有關用於RPC實現的第三方庫的內容

現在我的疑問是,假設如果我想實現客戶端和服務器程序,我將使用一些proto文件,並且我將爲該proto文件生成C++類,並且在服務器端我希望使用相同的proto文件,並且我將爲該proto文件生成java類

是否可以這樣使用

回答

2

是的,這是Protocol Buffers的主要目的之一。將.proto文件編譯爲C++和Java。您必須使用兩種語言支持的某種傳輸方式。但在C++中序列化的協議緩衝區在Java中會反序列化。

+0

謝謝你回覆japreiss,甚至我還有一個疑問,其實我在c程序中使用proto文件做了一個客戶端和服務器程序,並且我沒有使用protoc,而是使用了protoc-c,所以我得到了.h和。 c文件,一旦我編譯原始的使用protobuf-c編譯器的現在,現在我必須改變服務器端程序爲C++,所以我可以使用c + +版本的原型文件,如果使用是可能的...? – 2012-07-07 16:34:00

+0

爲什麼不用'protoc --cpp_out'重新編譯來獲取C++代碼? – japreiss 2012-07-07 16:35:34

+0

是的,我可以,但我沒有得到的是在客戶端病態使用C版本原型,所以根據它現在將通過RPC調用服務器端服務如果我使用C++版本原型在服務器可能爲客戶端與服務器通信。 ...? – 2012-07-07 16:41:48

相關問題