C++ 使用 map 定义并初始化 server_gpu_info 结构体
C++ 使用 map 定义并初始化 server_gpu_info 结构体
本文将演示如何使用 std::map 在 C++ 中定义并初始化一个名为 server_gpu_info 的结构体。
代码示例:
#include <map>
#include <string>
typedef struct server_gpu_info {
std::string server_endpoint;
int server_device_id;
} server_gpu_info;
int main() {
std::map<int, server_gpu_info> gpu_info_map = {
{1, {'endpoint1', 1}},
{2, {'endpoint2', 2}},
{3, {'endpoint3', 3}}
};
// 使用 map
server_gpu_info info = gpu_info_map[1];
// 访问 info 的成员
std::string endpoint = info.server_endpoint;
int device_id = info.server_device_id;
return 0;
}
解释:
- 定义
server_gpu_info结构体:
typedef struct server_gpu_info {
std::string server_endpoint;
int server_device_id;
} server_gpu_info;
使用 typedef 定义了一个名为 server_gpu_info 的结构体,其中包含两个成员变量:server_endpoint 和 server_device_id。
- 定义
gpu_info_mapmap:
std::map<int, server_gpu_info> gpu_info_map = {
{1, {'endpoint1', 1}},
{2, {'endpoint2', 2}},
{3, {'endpoint3', 3}}
};
使用 std::map<int, server_gpu_info> 定义了一个名为 gpu_info_map 的 map,其中 key 的类型为 int,value 的类型为 server_gpu_info 结构体。在定义的同时,我们使用花括号初始化了 gpu_info_map,并为每个 key-value 对提供了初始值。
- 访问和操作 map 中的数据:
// 使用 map
server_gpu_info info = gpu_info_map[1];
// 访问 info 的成员
std::string endpoint = info.server_endpoint;
int device_id = info.server_device_id;
通过 gpu_info_map[1] 可以访问对应 key 为 1 的 server_gpu_info 结构体。然后,我们可以使用点运算符访问 info 结构体的成员变量,例如 info.server_endpoint 和 info.server_device_id。
总结:
本文介绍了如何在 C++ 中使用 std::map 定义并初始化一个名为 server_gpu_info 的结构体。使用 std::map 可以方便地存储和访问结构体数据,并提供灵活的数据管理方式。
原文地址: https://www.cveoy.top/t/topic/pxfB 著作权归作者所有。请勿转载和采集!