1. 程式人生 > >protoc 生成C++程式碼

protoc 生成C++程式碼

1.安裝protoc
2.把protoc.exe增加到環境變數path,這樣方便執行protoc
這裡寫圖片描述
3.書寫proto檔案。eg:test.proto

syntax = "proto2";
message Book
{
    optional string name = 1;
    optional int32 pages = 2;
    optional float price = 3;
}
message Student
{
    optional int32 age = 1;
    optional string name = 2;
    optional float
score = 3; repeated Book arrBook = 4; }

4.生成C++程式碼
protoc -I=Proto檔案路徑 –cpp_out=指定輸出.h和.cc的目錄 Proto檔案
也可以使用protoc -h 檢視更多幫助
這裡寫圖片描述

生成結果:
這裡寫圖片描述

此時可以直接拷貝到工程裡面使用了。

相關推薦

protoc 生成C++程式碼

1.安裝protoc 2.把protoc.exe增加到環境變數path,這樣方便執行protoc 3.書寫proto檔案。eg:test.proto syntax = "proto2"; message Book { optional st

利用asn1c強ASN檔案生成C程式碼

1,從http://lionet.info/asn1c/download.html 下載 asn1c-0.9.21.exe (Windows環境),安裝(假設安裝在F:\Program Files\asn1c); 2,確定將要編譯的asn檔案目錄(假設為F:\Program

gsoap入門:C/C++程式碼生成及編譯--包含soapcpp2 -qname新增名稱空間後報錯的解決方法--可用

gsoap是什麼 先來一段百度百科,說說gsoap是什麼: gSOAP一種跨平臺的開源的C/C++軟體開發工具包。生成C/C++的RPC程式碼,XML資料繫結,對SOAP Web服務和其他應用形成高效的具體架構解析器,它們都受益於一個XML介面。 這個工具包提供了一個全面和透明的XML資料繫結解決方案,A

使用VisualStudio完成自動化C++程式碼生成和編譯工作(GacUI)

    GacUI終於進入製作dll的階段了。昨天上傳了一個新的工程,在Vczh Library++3.0(E:\Codeplex\vlpp\Workspace\Tools\Release\SideProjects\GacUI\GacUI.sln)。這裡面一共有三個工程,有兩個是工具,一個是dll。    為

生成0到1之間隨機數的C程式碼

#include <stdlib.h> #include <stdio.h> #include <time.h> int main() {srand((unsign

Simlulink學習筆記——C程式碼自動生成解析

一、理想質量 - 彈簧 - 阻尼系統         彈簧-質量-阻尼系統是一種比較普遍的機械振動系統,生活中也隨處可見這種系統,例如汽車緩衝器就是一種可以耗減運動能量的裝置,是保證駕駛員行車安全的必備裝置。我們通過建立理想的質量 - 彈簧 - 阻尼系統的二階物理系統模型,

一篇好文之Android 呼叫C程式碼生成除錯so庫

不靠譜的朱先生又來了,今天是週五,我又出現了!好了,不為自己多解釋,上週沒發文章,其實我寫了,只是沒有發出來而已……機智ovo。 上週寫的文章是關於GreenDao全面解析,其實當時是想寫一個關於資料庫的系列文章,後來一共就寫了兩篇,SQlite全面解析和GreenDao全面解析。至

C#程式碼生成一個簡單的PDF檔案(轉)

using System; using System.IO; using System.Text; using System.Collections; namespace PDFGenerator { /// /// Application : Generation of PDF file from

使用g++命令生成dll檔案實現lua呼叫C程式碼

首先安裝gcc環境,下載MinGW,MinGW只是一個管理工具,真正的環境還需要在裡面下載注意選中下載項後點擊選單項中Installation--->Apply Changes才會開始下載,會下載至MinGw安裝目錄下,確保bin目錄中存在lua52.dll,lua.e

C++程式碼生成一面五星紅旗

原始問題的背景和描述 比賽基於下面的基礎程式碼 ,如果原始連結無法訪問,可以備用我的另一CSDN部落格中引用給出的程式碼。已提到,感興趣的是基於這個程式碼如何生成一面五星紅旗。 紅旗的設計圖如下,也在我的上一篇部落格搜尋給出過。 計算和程式碼

C程式碼檔案如何生成Dll動態連結庫

已經有c程式碼檔案,如何生成dll,並能然後c#呼叫裡面的函式: 1.在vs裡面新建一個c++的空專案,把c程式碼都載入進去,然後更改專案的屬性, 如下圖: 配置型別改為動態庫.dll。 2.新增.def檔案,並編輯檔案內容 LIBRARY EXPORTS test1 @

C#呼叫c程式碼生成的dll,報PInvoke 簽名與非託管的目標籤名不匹配

C# 在呼叫c程式碼生成的dll時,報錯:對 PInvoke 函式“TestJBIG!TestJBIG.JbigHelper::jbigDecode”的呼叫導致堆疊不對稱。原因可能是託管的 PInvoke 簽名與非託管的目標籤名不匹配。請檢查 PInvoke 簽名的呼叫約定

g++ 編譯連結C++程式碼生成與使用靜態庫和動態庫

例如我有A.cpp、A.h、main.cpp 三個檔案 編譯連結C++程式碼: 第一步:g++ -c A.cpp main.cpp 這樣就可以編譯A.cpp和main.cpp的程式碼生成A.o和main.o檔案【因為A.cpp包含了A.h的標頭檔案,所以一般編譯時

【風宇衝】Unity3D教程寶典之 C#程式碼註釋規範及文件生成

原為地址:http://blog.sina.com.cn/lsy835375 C#程式碼註釋規範及文件生成 在使用c#進行Unity3D遊戲開發中,良好的註釋和文件能讓開發更有效率,條理更清晰。 本講分為兩個部分: 一:編寫註釋 二: 生成文件     

Dev c++工具將C程式碼生成dll檔案以及如何呼叫dll檔案

該篇文章是對工作中一個需求的總結,工作需求是要將C語言的函式介面,生成一個DLL檔案,讓labview呼叫。然後我嘗試用dev c++開發工具來實現這個功能,後來因為DLL生成了,但labview呼

開源:C# 程式碼自動生成工具,支援站點前後臺

  前言     寫這個專案有很長一段時間了,期間也修修改改,寫到最後,自己也沒咋用(研究方向變化了)。   正文     具體專案開源了:https://github.com/supperlitt/WebAutoCodeOnline (這個應該不算一個廣告文)     要說技術,感覺也沒啥

編譯生成C++導出函數dll,並在C#工程中測試

lec ces 說明 cnblogs c# point article span targe 編譯生成過程: 1.建立dll工程 選擇新建visual C++的 這兩個類型工程,都會出現下面界面,在這裏設置生成dll: 2.設置項目: 項目屬性中設置: 3.相

android studio 利用gradle和cmakelist生成c++靜態庫.a的方法總結

nts 需求 roi ++ build mat 頭文件 方法 ext android生成靜態庫的方法有兩種,一種是編輯android.mk文件,一種是編輯cmakelist文件。前一種沒做研究,因為用的ide是android studio,所以直接利用gradle調用cma

四種Sandcastle方法生成c#.net幫助類幫助文檔

hive 完成 怎樣 tle 引入 util github 輸入 處理 方法一、Visual Studio新建documentation生成幫助文檔 前段時間在網上收集和自己平時工作總結整理了《幹貨,比較全面的c#.net公共幫助類》,整理完成上傳git

ubuntu16.04生成c++文件並編譯

文本 ubuntu 一個 color -s span spa 回車 6.0 創建存放cpp文件的文件夾,並進入:   mkdir test   cd test 創建cpp文件:   vi test_cpp.cpp 輸入   :x 按回車,保存文本 輸入     g++ te