当前位置: 首页 > news >正文

网站群建设方案6wordpress门户源码

网站群建设方案6,wordpress门户源码,免费开店的平台有哪些,专门做运动鞋的网站protobuf自定义数据格式,CMake编译文件读写自定义数据 1.protobuf安装2.定义.proto文件3.编写main.cpp4.编写CMAkeLists配置文件5.运行 1.protobuf安装 protobuf库链接 2.定义.proto文件 新建一个Person.proto文件和一个Animal.proto文件,内容如下&…

protobuf自定义数据格式,CMake编译文件读写自定义数据

  • 1.protobuf安装
  • 2.定义.proto文件
  • 3.编写main.cpp
  • 4.编写CMAkeLists配置文件
  • 5.运行

1.protobuf安装

  protobuf库链接

2.定义.proto文件

新建一个Person.proto文件和一个Animal.proto文件,内容如下:

syntax = "proto3";package UserInfo;message Person {string name = 1;int32 id = 2;string email = 3;
}
syntax = "proto3";package UserInfo;message Animal {string name = 1;int32 id = 2;int32 age = 3;
}

在这里插入图片描述

3.编写main.cpp

main函数中对proto中的对象进行序列化和反序列化,内容如下:

#include "Animal.pb.h"
#include "Person.pb.h"
#include <fstream>
#include <iostream>int main() {{// 创建 Person 对象UserInfo::Person person;person.set_name("John Doe");person.set_id(123);person.set_email("john.doe@example.com");// 将数据序列化到文件std::ofstream output("person_data", std::ios::binary);person.SerializeToOstream(&output);output.close();// 从文件中读取数据并反序列化UserInfo::Person read_person;std::ifstream input("person_data", std::ios::binary);read_person.ParseFromIstream(&input);input.close();// 打印反序列化后的数据std::cout << "Name: " << read_person.name() << std::endl;std::cout << "ID: " << read_person.id() << std::endl;std::cout << "Email: " << read_person.email() << std::endl;}{ // 创建 Animal 对象UserInfo::Animal animal;animal.set_name("Dog");animal.set_id(456);animal.set_age(5);// 将数据序列化到文件std::ofstream output("animal_data", std::ios::binary);animal.SerializeToOstream(&output);output.close();// 从文件中读取数据并反序列化UserInfo::Animal read_animal;std::ifstream input("animal_data", std::ios::binary);read_animal.ParseFromIstream(&input);input.close();// 打印反序列化后的数据std::cout << "Name: " << read_animal.name() << std::endl;std::cout << "ID: " << read_animal.id() << std::endl;std::cout << "age: " << read_animal.age() << std::endl;}return 0;
}

在这里插入图片描述
 &ems;注意这时候我们的main.cpp文件是报错的,因为找不到Animal.h文件和Person.h文件,没关系,接下来编辑CMAkeLists.txt配置文件,生成相应的头文件即可!

4.编写CMAkeLists配置文件

cmake_minimum_required(VERSION 3.5)
project(YourProjectName)set(CMAKE_CXX_STANDARD 11)# 查找protobuf库
find_package(Protobuf REQUIRED)# 获取所有的protobuf文件
file(GLOB PROTO_FILES "proto/*.proto")# 生成protobuf文件的C++代码
protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS ${PROTO_FILES})# 添加生成的protobuf文件到项目中
include_directories(${CMAKE_CURRENT_BINARY_DIR})
include_directories(${PROTOBUF_INCLUDE_DIRS})# 添加可执行文件
add_executable(main main.cpp ${PROTO_SRCS} ${PROTO_HDRS})# 链接protobuf库
target_link_libraries(main ${PROTOBUF_LIBRARIES})

在这里插入图片描述

5.运行

mkdir build
cd build
cmake ..
make 
./main

结果如下:

在这里插入图片描述

http://www.yayakq.cn/news/628849/

相关文章:

  • 做网站需学什么设计网站要包含信息类型
  • 河北做网站如何建立asp网站
  • 聊城的网站制作公司网站建设与管理书籍
  • 本人找做钢筋笼的活网站合川建网站
  • 做网站开始要注意什么北京建筑大学研究生招生网
  • 自助建站 知乎山东建站管理系统
  • 基于wed的网站开发如何建设微商网站
  • 长春公司做网站郑州陆港开发建设有限公司网站
  • 织梦绿色企业网站模板恢复wordpress修订版本
  • 两栏式设计网站wordpress 3.8.3 下载
  • 网络设置网站网站到期续费通知
  • 鹤壁网站推广医院网站规划方案
  • 门户网站建设目标阿里云服务器做网站django
  • 免费wordpress网站保定seo排名
  • 校园网站建设的请示网站开发的职业分析
  • dede网站模板安装公关
  • 优秀网站建设出售大男人直播视频
  • 网站详情一般是什么公司做好设计购物网站
  • 巩义企业网站快速优化多少钱图片设计网站有哪些
  • 上饶市建设局培训网站如何做网站淘宝客
  • 网站开发培训深圳seo文章是什么
  • 帝国cms怎么做网站建立网站需要备案吗
  • 在哪个网站做一照一码服装网站开发的需求分析
  • 免费免费建站企业邮箱下载安装
  • 网站建设单一来源谈判文件在线医疗 网站建设
  • 网站首页被k咋办网站建设与管理吴振峰ppt
  • 平台网站推广方案外贸免费自助建站平台
  • wordpress上面的模板河池网站seo
  • 邢台建设专业网站怎样做一个网站首页
  • 帮人建网站价格成都网站制作南昌