我在一个类中有一个数组,它是:
private:
static const int MAX_EQUIPS=100;
equip a_t[MAX_EQUIPS];
int a_n;
然后他们主要告诉我 MAX_EQUIPS 大小应该是多少,我怎样才能让它改变?它从 X 开始,然后在输入新的 valor 时增加或减少。
C++ 解决方案是:
class MyClass
{
public:
MyClass( size_t n ) :
a_t( n )
{
}
private:
std::vector< int > a_t;
};
我建议为此使用 std::vector ,因为它本身会包装大部分内容。
private:
std::vector<int> a_t;
然后,当您获得大小时: a_t.resize(MAX_EQUIPS);
你的 a_n 将是 a_t.size()。
但是,如果你真的想自己做,你需要做一些分配(你应该与 ctor/dtor 语义相关联。