我知道我可以使用std::array<Type, Size>
来拥有Type
类型和大小的数组,该数组在编译时是固定的。
此外,如果大小不是在编译时固定的,而是在运行时指定的,则可以使用std::vector
。
是否有一个std容器,可以在运行时将其设置为特定大小,并且此大小不可更改?我的意图是在创建此容器后更改大小,以获取编译错误。
当然,可以使用指针将其与旧式数组一起存档。但是,这还具有必须将指针和长度传递给函数的缺点?
答案 0 :(得分:4)
是否有一个std容器,可以在运行时将其设置为特定大小,并且此大小不可更改?
否,还没有提供这种功能的标准容器。
您可以使用固定大小为std::vector
写一个简单的包装器类,如此处答案中所建议的: