迭代向量内部的向量

问题描述 投票:0回答:1

我正在尝试遍历此向量,以找出我具有的用于检查向量中名称的函数是否正在工作。

  typedef struct device_t
    {
        string id;
        vector<string> capabilities;
    } Device;


vector<Device> devices = {
  { .id = "Television", .capabilities = { "audio", "channel" } },
  { .id = "Smart thermostat", .capabilities = { "temperature" } },
  { .id = "Stereo system", .capabilities = { "audio", "music" } },
  { .id = "Kitchen sink", .capabilities = { } },
  { .id = "Paper shredder", .capabilities = { "shredding" } }
};

 vector<Device>::iterator it;

    for (it = devicecheck.begin(); it != devicecheck.end(); it++) {
        std::cout<< *it;
    }

但是我不知道到达向量{.id}内部的devices部分。有什么提示吗?

c++ loops vector
1个回答
0
投票

it->capabilities是当前迭代器std::vector<std::string> capabilities指向的Deviceit。要遍历capabilities,您可以执行以下操作:

© www.soinside.com 2019 - 2024. All rights reserved.