c++结构字段的最后一个元素

标签 c++ set structure field

我得到一个结构,但我不知道它的大小(每次都不一样)。我想将此结构的一个字段中的最后一个位置设置为某个值。在伪代码中,我的意思是这样的: structureA.fieldB[end] = cert_value;

我会在 matlab 中完成,但是我无法在 C++ 中找到正确的语法,你能帮我吗?

最佳答案

在 Matlab 中,一个 structure数据类型保存键值对,其中“值”可能是不同类型。在 C++ 中,有一些可用的键值容器(关联容器,如 set、map、multimap),但它们通常存储单一类型的元素。如果我理解正确的话,你需要的是类似

“一”:1

“二”:[1,2,5]

“三”:“姓名”

这意味着您的结构类似于 Python dictionary .

在 C++ 中,我听说过使用真正不同类型的容器的唯一方法是使用 boost::any ,它被接受为 this question 的答案.

如果你用不同类型的元素打包一个容器,那么你可以使用容器的 end() 成员函数来获取最后一个元素。

关于c++结构字段的最后一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14231946/

相关文章:

C++ 风格的指针转换为整数

c++ - 模板函数参数有什么问题

c++ - 固定成员

c++ - 不同的隐式生成函数之间是否存在可观察到的语义差异?

c++ - 配置文件解析器

android - 在 Android 中设置从一个特定应用程序到另一个应用程序的权限

javascript - 如何在 JavaScript 中映射/减少/过滤一个集合?

mysql - 如何将sql模式变量设置为mysql中的局部变量

sql - 构建结构然后填充查询中的值?

c - 读取两个整数并找出第一个整数的所有小于第二个整数的正倍数