第二节:protobuf-3.6.1 visual studio 2017(vs2017) 简单使用

本文详细介绍在Windows环境下使用Visual Studio 2017编译Protobuf 3.6.1的步骤,包括创建控制台工程、配置环境、生成与编译Proto文件,以及解决常见编译错误的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一节: windows下vs2017编译protobuf 3.6.1: https://blog.youkuaiyun.com/shan165310175/article/details/86624119

1. 新建立console空工程。(这里使用debug编译方式示例)

2. 拷贝protoc.exe到工程目录

3.工程目录新建立helloworld.proto文件,内容:

syntax="proto3";

package hello;

enum Type{
	UNKNOWN=0;
	BOOK1=1;
	BOOK2=2;
}

message User{
	int32 id=1;
	string name=2;
}

message Book{
	int32 id=1;
	string name=2;
	repeated int32 list=3;
	Type type=4;
	User user1=5;
	repeated User userList=6;
}

4.使用命令生成文件,并将文件加入工程:protoc.exe helloworld.proto --cpp_out=./

5. 配置工程中的头文件目录与lib依赖:

 

libprotobufd.lib
libprotobuf-lited.lib
libprotocd.lib

 

 

6. 增加main.cpp:

#include "helloworld.pb.h"

using namespace std;

int main(int argc, char **argv) {

	hello::Book book;
	book.set_id(100);
	book.set_name("jack");
	book.add_list(11);
	book.add_list(21);

	book.set_type(hello::Type::BOOK1);
	hello::User *user=book.add_userlist();
	user->set_id(1);
	user->set_name("Mr X");
	user = book.add_userlist();
	user->set_id(2);
	user->set_name("Mr Y");

	book.PrintDebugString();

	return 0;
}

7. 编译执行:

 

附加: 这里有个protobuf编译错误:

https://blog.youkuaiyun.com/shan165310175/article/details/86626013

 

 

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值