我正在尝试遍历此向量,以找出我具有的用于检查向量中名称的函数是否正在工作。
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
部分。有什么提示吗?
it->capabilities
是当前迭代器std::vector<std::string> capabilities
指向的Device
的it
。要遍历capabilities
,您可以执行以下操作: