拷貝構(gòu)造函數(shù)中m_iCount = arr.m_iCount;先賦值和后賦值為什么為有不同的結(jié)果?
Array::Array(const Array&arr)
{
行1:m_iCount = arr.m_iCount;
m_pArr = new int[m_iCount];
for (int i = 0; i < m_iCount; i++)
{
m_pArr[i] = arr.m_pArr[i];
}
將行1放入最后一行
Array::Array(const Array&arr)
{
行1:m_iCount = arr.m_iCount;
m_pArr = new int[m_iCount];
for (int i = 0; i < m_iCount; i++)
{
m_pArr[i] = arr.m_pArr[i];
}
2020-09-18
首先你問題描述得不是很清楚,兩段代碼都是一樣的,你的意思如果是將行一那一行代碼放到最后一行,那m_iCount的賦值就放在了最后,那未賦值的m_iCount就是一個隨機值,m_pArr[]這個數(shù)組的長度就無法確定。