In C++, lvalue references are used to refer to memory locations, allowing functions to modify the object passed in by the caller. They serve to alias a memory location, thus enabling the manipulation of data without having to create duplicate variables or objects.