Path: utzoo!attcan!uunet!oresoft!dan From: dan@oresoft.uu.net (Daniel Elbaum) Newsgroups: comp.lang.c++ Subject: Re: References Message-ID: <1989Jul26.184043.8306@oresoft.uu.net> Date: 26 Jul 89 18:40:43 GMT References: <3079@internal.Apple.COM> Reply-To: dan@oresoft.uu.net (Daniel Elbaum) Organization: Oregon Software, Portland, OR Lines: 40 In article <3079@internal.Apple.COM> kanner@Apple.COM (Herbert Kanner) writes: :I wonder what the formal language rule is which forces the following :interpretation on : : int *&pl; : :namely: "pl is a reference to a pointer to an integer." What disallows :the interpretation : : int *(&pl); i.e. int pl;? int *&pl; is illegal, since a reference delarator must generally be followed by an initializer. A reference is not a pointer but an alias; given int *ip; int &pr = ip; *pr === *ip and &pr === &ip. Since a reference cannot exist in a vacuum, declaring a name for the value of the antecedent of a vacuous reference can have no meaning. :Finally, how about : : int &*pl; : :Is pl here a pointer to a reference to an integer? It parses that way, but since there's no such thing as a pointer to a reference, such a declaration can't be used. -- The workaday world must remain transparent to those who maintain it if they are to find inspired within them a vision of the history they create. ({uunet,tektronix,reed,sun!nosun,osu-cis,psu-cs}!oresoft!(dan)@oresoft.uu.net)