Which statement about C++ references is correct? Select the fact that accurately reflects how references behave in real code.
-
AA reference is declared using * operator.
-
BOnce a reference variable has been defined to refer to a particular variable it can refer to any other variable.
-
CA reference must always be initialized within classes.
-
DA variable can have multiple references.
Answer
Correct Answer: A variable can have multiple references.
Explanation
Introduction / Context:References are aliases. Nothing prevents multiple distinct references from aliasing the same object. This question seeks the statement that correctly captures legal and common reference usage.
Given Data / Assumptions:
- Standard C++ reference rules apply: must initialize at declaration; cannot reseat.
- Syntax: & is used for declaring references.
- Scope (class vs function) does not change the initialization rule.
Concept / Approach:Any number of references can bind to the same object. They are simply additional names (aliases) for that object. Declaring a reference uses the & symbol in the type. Initialization is required regardless of being inside a class or function; class data members are typically initialized via constructors.
Step-by-Step Solution:1) Consider 'int x; int &r1 = x; int &r2 = x;' → legal; two references alias x.2) Rule out '' syntax: that declares pointers, not references.3) Rule out reseating: references cannot later refer to another object.4) Rule out 'within classes': initialization is always required, not only within classes.
Verification / Alternative check:Compile a small sample with multiple references to one variable and verify that modifying through any reference changes the same underlying object.
Why Other Options Are Wrong:' operator': that is pointer declaration syntax.Reseating claim: contradicts the binding rule.'Must be initialized within classes': scope does not create a special exception; it is always required.
Common Pitfalls:Assuming references are unique handles. They are not; you can create many references to the same object, which can complicate alias analysis.
Final Answer:A variable can have multiple references.