gpt4 book ai didi

具有结构的 C++ vector 不起作用?

转载 作者:搜寻专家 更新时间:2023-10-31 00:17:12 24 4
gpt4 key购买 nike

我正在处理一些文件并尝试加载它们。我想用一个 vector 来存储最终的信息,这样我就可以在全局范围内保存它而无需知道它有多大。这是我的代码,但程序没有完成启动:

std::string one = "v 100.32 12321.232 3232.6542";
struct Face {float x, y, z;};
std::vector<struct Face> obj;
char space[3];
sscanf(one.c_str(), "%s %f %f %f", space, &obj[1].x1, &obj[1].y1, &obj[1].z1);
std::cout << obj[1].x1 << std::endl;

最佳答案

默认构造vector s 开始为空,即使编译器允许您使用 operator [] ,这样做是未定义的行为。

您可以在创建vector 时分配一些空间。虽然:

std::vector<struct Face> obj(2); // Allow enough space to access obj[1]

关于具有结构的 C++ vector 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14074734/

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