让我们以自定义vector
实现为例:
template<typename Object>
class myVector {
public:
explicit myVector(int size = 0) :
_size{ size },
_capasity{ size + SPARE_CAPACITY }
{
_buff = new Object[_capasity];
if (_size > 0) {
for (int i = 0; i < _size; i++) {
//_buff[i] = 0;
}
}
}
// more code
private:
Object * _buff = nullptr;
int _size;
int _capasity;
};
所以我的问题是,如何进行myVector
值初始化,以防我将其初始化为:
int main() {
myVector<int> v02(5);
}
在这里,它包含 5 个int
值,所以我需要它全为零;与其他类型相同。我注释掉了,_buff[i] = 0;
因为它是特定于int
. 请给我一些提示。