Yerel nesneye başvuru getiren bir işlev yazdım.Yerel nesneye başvuru döndüren işlev
Fraction& operator*(Fraction& lhs, Fraction& rhs)
{
Fraction res(lhs.num*rhs.num,lhs.den*rhs.den);
return res;
}
fonksiyonu sonra res imha edilmesi ve alıcı bir amacı bunu kullanarak istenmeyen davranışlara yol Ex-Fraksiyon nesneye işaret eder nesnesi geri gönderecekti. Bu işlevi kullanacak kimse sorunla karşı karşıya gelecek.
Derleyici neden bu tür bir durumu derleme zamanı hatası olarak algılayamıyor?
Genel olarak, - g ++, 'uyarı' gibi yerel bir değişkene 'x' döndürülür [varsayılan olarak etkinleştirildi] 'gibi bir şey basabilir. Kullandığınız derleyiciye ve/veya kullandığınız derleyici anahtarlarına bağlı olabilir. –
, uyarıların ne zaman yapıldığı, tüm uyarıların hata olarak ele alınması zamanıdır. – yngccc
Sabit referans ile geri dönebilirsiniz ve iyi olacak – dchhetri