Возможный дубликат:
предупреждение С++: адрес локальной переменной
Привет, Когда я пишу этот код:
//Returns the transpose matrix of this one
SparseMatrix& SparseMatrix::transpose()const{
vector<Element> result;
size_t i;
for(i=0;i<_matrix.size();++i){
result.push_back(Element(_matrix.at(i)._col, _matrix.at(i)._row, _matrix.at(i)._val));
}
return SparseMatrix(numCol,numRow,result);
}
Я получаю предупреждение "возвращающий адрес или локальную переменную или временную". Последняя строка вызывает конструктор SparseMatrix. Я не понимаю, что не так с этим кодом, и как я могу его исправить, поэтому я могу вернуть объект SparseMatrix, как я хочу.