dsa@dlogics.UUCP (David Angulo) (11/17/89)
// I have a question. When I compile the following code in Glockenspiel's
// c++ v 1.2 E on the VAX under VMS 5.2:
#include <stream.hxx>
class a
{
int pdq;
public:
a () {pdq = 1;}
void operator=(const a& source_a) {pdq=source_a.pdq+1;}
int operator int() {return pdq;}
};
class b : public a
{
public:
b() : () {}
};
main ()
{
b a_b;
a an_a;
a_b = an_a;
int c = (int)a_b;
}
// I get the following error messages:
// designer C Preprocessor, release 1.2 E
// AT&T C++ Compiler, release 1.2 E
// Copyright 1984 AT&T Inc. and 1986 through 1988 Glockenspiel Ltd.
//"sys$library:stddef.h", line 12: warning: " volatile" not implemented (ignored)
//"q3.cxx", line 26: error: assignment not defined for class b
//"q3.cxx", line 27: error: cannot cast class object to int
//
// I don't understand any of these error messages - shouldn't these methods
// have been inherited from class a?
--
David S. Angulo (312) 266-3134
Datalogics Internet: dsa@dlogics.UUCP
441 W. Huron UUCP: ..!uunet!dlogics!dsa
Chicago, Il. 60610 FAX: (312) 266-4473