returning an L-value in C++ need help

travler

Senior member
Feb 28, 2002
220
0
0
this is in my book and I can figure out what it wants me to do, but it sounds simple

the whole program isnt needed

in main there are objects a, b and c

int main()
{
a = b = c;
}

in the class Date we have

Date Date:perators=(const Date& newdate)
{
day = newdate.day;
month = newdate.month;
year = newdate.yar;

return *this
}

which makes the return vaue an R-value.
Im trying to figure out how to modify the assignment operator so the expression a = b = c returns an l-value.

any sugestions, hints , or explanations are appreciated.

thanks

 

RSMemphis

Golden Member
Oct 6, 2001
1,521
0
0
Apart from the omitted semicolon (I assume just a typo here), this sounds correct to me.
In fact, my book says the same and it has worked for me in the past.

 

PCHPlayer

Golden Member
Oct 9, 2001
1,053
0
0
I believe "Date Date:: operator=(const Date &);" should be "Date & Date:: operator=(const Date &);"
The reference makes it an l-value.
 

travler

Senior member
Feb 28, 2002
220
0
0
I think you misunderstand. the code snipets I gave were correct but they are returning an r-value from the function.

I want to return as an l-value.

from another forum I was told to do this it should be writeen as

Date& Date:perator=(const Date& newdate)

yes the missing semi-colon was a typo haha give me a break

I hate how my code gets made into smily faces.

The realy vexing part of the question is it sounds like it wants me to change associativity which is imposible. I just needed to make it a refrerence apparantly
 

PCHPlayer

Golden Member
Oct 9, 2001
1,053
0
0
When you return a "Date" the compiler essentially creates a temporary "Date" object then uses that in the calling expression. Once the statement has been completely evaluated the temporary object is deleted. So there is no way to make a non-reference return value an l-value.
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |