Duplicar posible:
c++ warning: address of local variabledirección de retorno o una advertencia variable local o temporal C++
Hola, Cuando escribo este código:
//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);
}
me sale el aviso "dirección de retorno o variable local o temporal". La última línea llama al constructor SparseMatrix. No entiendo qué está mal con este código, y cómo puedo solucionarlo para que pueda devolver un objeto SparseMatrix como yo quiera.
+1 ¡Aquí el "&" es inútil (de hecho erróneo)! – kartheek
gracias! No me he dado cuenta que lo he declarado como un valor de retorno de la referencia. – limlim