gpt4 book ai didi

c++ - 如何在 capnproto C++ 生成的代码中设置列表的字符串项?

转载 作者:行者123 更新时间:2023-11-30 03:34:24 24 4
gpt4 key购买 nike

我有这样的 capnproto 定义:

struct School {
name @0 :Text;
address @1 :Address;
foundation @2 :Date;
emailAddresses @3 :List(Text);
}

我想在构建器中使用类似于此的代码设置 emailAddresses 字段(但这不会编译):

static School::Builder random_School() {
capnp::MallocMessageBuilder msg;
School::Builder result = msg.initRoot<School>();
result.setName(rand_str(36));
result.setAddress(random_Address());
result.setFoundation(random_Date());
result.initEmailAddresses(item_count);
for (size_t i = 0; i < item_count; ++i) {
result.getEmailAddresses()[i] = rand_str(37); // rand_str returns std::string
}
return result;
}

正确的做法是什么?

最佳答案

根据 capnproto documentation在列表部分,您应该使用 builder.set(index, value)。

result.getEmailAddresses().set(i, rand_str(37));

我想现在应该可以编译了。

关于c++ - 如何在 capnproto C++ 生成的代码中设置列表的字符串项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42056958/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com