Tom Kelliher, CS18
Mar. 15, 1996
Entity:
A living being, object, or abstraction that can be described in terms of certain characteristics, and is similar to, but distinct from, entities of the same type.
Examples:
Entity Set:
A collection of entities of the same type.
Distinguished by attributes.
Relationship:
An association among members of one or more entity sets.
Relationship set:
A set of similar but distinct relationships of the same type.
Note: differs from the example in the text.
Attributes:
Attributes:
Attributes:
Structure is a class with public access:
struct sample
{
int a;
};
int main()
{
sample s;
s.a = 12;
return 0;
}
Class is a structure with private access:
class sample
{
int a;
};
int main()
{
sample s;
// error message: "member `a' is a private member of class `sample'"
s.a = 12;
return 0;
}
Elements of a class declaration:
Class members have access rights associated:
``Access'' means:
Class declaration:
class Complex
{
private:
double real;
double imag;
public:
// constructor declaration:
Complex(double re, double im);
// destructor definition:
~Complex() {}
// other methods' declarations:
void Add(Complex x, Complex y);
void Mult(Complex x, Complex y);
void Conj(void);
};
Method definitions:
Complex::Complex(double re, double im)
{
real = re;
imag = im;
}
void Complex::Add(Complex x, Complex y)
{
real = x.real + y.real;
}
void Complex::Mult(Complex x, Complex y)
{
real = x.real * y.real - x.imag * y.imag;
imag = x.real * y.imag + x.imag * y.real;
}
void Complex::Conj(void)
{
imag = -imag;
}
Client function:
int main()
{
Complex x(-1.0, 3.0);
Complex y(4.0, 5.0);
Complex z(0.0, 0.0);
z.Add(x, y);
y.Conj();
x.real = 23.0; // access violation
return 0;
}