The . (dot) operator is used to access class, structure, or union members. The member is specified by a postfix expression, followed by a . (dot) operator, followed by a possibly qualified identifier or a pseudo-destructor name. The postfix expression must be an object of type class, struct or union. The name must be a member of that object.
The value of the expression is the value of the selected member. If the postfix expression and the name are lvalues, the expression value is also an lvalue. If the postfix expression is type-qualified, the same type qualifiers will apply to the designated member in the resulting expression.
A pseudo-destructor is a destructor of a nonclass type named
type_name in the following syntax diagram :
>>-+-+----+--+-----------------------+--type_name--::--~--type_name-----------------+->< | '-::-' '-nested_name_specifier-' | +-+----+--nested_name_specifier--template--template_identifier--::--~--type_name-+ | '-::-' | '-+----+--+-----------------------+--~--type_name--------------------------------' '-::-' '-nested_name_specifier-'
Related References