草庐IT

m_someData

全部标签

c++ - 这个复制构造函数是个坏主意吗?

所以,我觉得这是个坏主意:classFoo{public:Foo(constFoo&from){memcpy(this,&from,sizeof(Foo));m_someData=newint[m_dataLength];memcpy(m_someData,from.m_someData,m_dataLength*sizeof(int));}private:int*m_someData;intm_dataLength;};问题是:为什么?如果memcpy参数类型(和大小)相同,布局相同,哪里不好?我看到的一个潜在问题是是否存在string或vector字段,但我不确定这是否是一个有效的