Reassignment to reference doesn't cause error

This commit is contained in:
Geoff Liu 2014-12-01 21:39:49 -07:00
parent e1610bf1a9
commit bf493c07ed

View File

@ -238,7 +238,10 @@ string& fooRef = foo; // This creates a reference to foo.
fooRef += ". Hi!"; // Modifies foo through the reference fooRef += ". Hi!"; // Modifies foo through the reference
cout << fooRef; // Prints "I am foo. Hi!" cout << fooRef; // Prints "I am foo. Hi!"
fooRef = bar; // Error: references cannot be reassigned. // Doesn't reassign "fooRef". This is the same as "foo = bar", and
// foo == "I am bar"
// after this line.
fooRef = bar;
const string& barRef = bar; // Create a const reference to bar. const string& barRef = bar; // Create a const reference to bar.
// Like C, const values (and pointers and references) cannot be modified. // Like C, const values (and pointers and references) cannot be modified.