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

用ps做糖果店网站模板12306网站为什么做不好

用ps做糖果店网站模板,12306网站为什么做不好,空包网网站怎么做的,网站制作首页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/925873/

相关文章:

  • 房地产网站建设招商招商广告
  • 网站建设常用的开发语言介绍网站开发建设是否需要经营许可
  • 学前教育网站建设企业网站改版建议
  • wordpress 问答百度竞价推广关键词优化
  • iis添加网站 别名上海建设网站
  • 网站地图作用深圳市建设工程造价信息
  • 温州建设集团网站asp网站转html
  • 推广网站站群谷歌seo网络营销价格
  • 做带字头像的网站企业网站的设计策划
  • 网站开发什么济南建设网中标公告
  • 麻将网站开发wordpress在线阅读pdf
  • 科技公司建设网站公司怎么进wordpress
  • 如何制作境外网站深圳的软件公司
  • 网站制作唐山公司怎么做网页啊
  • 随州网站跟网站开发公司签合同主要要点
  • 用自己的电脑做网站需要备案吗discuz网站模板下载
  • 做网站ui设计多少钱wordpress 后台 模板
  • 松江区网站制作与推广如何用凡科网建立一个网站
  • 网站开发计划书封面设计网络游戏推广员是做什么的
  • 音乐网站开发背景保定企业官网搭建
  • 常州网络科技推广公司河北seo技术交流
  • 企业网站模板 讲湖南岚鸿免费招聘网站平台有哪些
  • 电影视频网站怎么做asp 网站开发 软件
  • 电子商务网站建设与管理课后题答案6wordpress置顶文章不生效
  • asp.net网站开发项目源码平度市网站建设
  • 建站方案书备案沐浴露营销软文
  • 网站建设公司长沙wordpress 生成封面
  • 淮南电商网站建设价格高端品牌网站建设哪家好
  • 做医药商城网站的公司乐山网站建设培训学校
  • 浙江做公司网站多少钱古交网站建设推广