由买买提看人间百态

topics

全部话题 - 话题: gvector
(共0页)
b**n
发帖数: 289
1
我有一个GVector 的Class,它有一个copy constructor是用template的。
template
class GVector{
public:
template GVector (const GVector& rhs): length_(rhs.length()
){
ptr_ = new (nothrow) T[length_];
assert(ptr_);
std::copy(&rhs(0), &rhs(0) + length_, ptr_);
}
但我每次在下列情况下(X = T)都会出现运行期的内存错误
GVector v(3);
GVector v2(v);
但如果在X != T时,就没有问题,比如:
GVector v(3);
GVector vi(v);
请问这是怎么回事? 我现在在把我以前写的一些class改成template的,结果问题好多
啊!
谢谢帮忙。
(共0页)