我有一个系统,我需要获取特定职位的“代码”。位置的数量是固定的,从 1 到 40,但是,每个位置可以有不同数量的代码(从 2 到 20)。容器是常量,需要定义,然后仅用于查找程序其余部分的位置。
例如,我需要能够做一些事情,比如myCodes.at(position3)
得到{1, 3, 9, 23, 52}
和myCodes.at(position7)
得到{23, 52}
因此,外部容器的大小是恒定的,但内部容器的大小可以从 2 到 20 不等。我知道如何做到这一点的方法是使用数组,并将第二维设为最大可能大小 (20): const int myCodes[40][20]
,然后只需用额外的 0“填充”内部数组。
然而,这感觉真的很浪费,特别是因为许多内部数组只能保存 2 个元素。我也在努力学习 C++11,所以如果有的话,我更喜欢“现代”解决方案。