-.
__(_::*___) (__);
.
double(complex::*ptcom)(); //
ptcom = &complex:: real; //
//
complex A(5.2,2.7);
cout<<(A.*ptcom)();
.
4. 1 ( ).
5. : , , .
6. .
7. - .
8. -.
9. .
10. , ( ).
11. -.
.
.
const int LNAME=25;
class STUDENT{
char name[LNAME]; //
int age; //
float grade; //
public:
STUDENT(); //
STUDENT(char*,int,float); //
STUDENT(const STUDENT&); //
~STUDENT();
char * GetName();
int GetAge() const;
float GetGrade() const;
void SetName(char*);
void SetAge(int);
void SetGrade(float);
void Set(char*,int,float);
void Show(); };
name : char* name. - .
2. .
STUDENT::STUDENT(char*NAME,int AGE,float GRADE)
{
strcpy(name,NAME); age=AGE; grade=GRADE;
cout<< \n <<this<<endl;
}
3. . , :
)
.
STUDENT a(,19,50), b=a;
)
.
void View(STUDENT a){a.Show;}
)
.
STUDENT NoName(STUDENT & student)
{STUDENT temp(student);
temp.SetName(NoName);
return temp;}
STUDENT c=NoName(a);
4. , , .
.
)
STUDENT gruppa[3];
gruppa[0].Set(,19,50);
..
STUDENT gruppa[3]={STUDENT(,19,50),
|
|
STUDENT(,18,25.5),
STUDENT(,18,45.5)};
)
STUDENT *p;
p=new STUDENT [3];
p-> Set(,19,50);
..
5.
void (STUDENT::*pf)();
pf=&STUDENT::Show;
(p[1].*pf)();
.
1. : ; ; , , ; .
2. . , .. , , , - ..
3. .
4. .
5. , .
6. , , .
1. class struct?
2. .
3. ?
4. , , ?
5. , , ?
6. ?
7. new delete.
8. This, .
9. Inline ;
10. .
-
1.
char*
char*
char*
int
float
2.
char*
float
. int
float
3.
-char*
-char*
- char*
int
int
4.
char*
char*
char*
char*
float
5.
char*
char*
char*
float
6.
char*
char*
char*
int
char*
7.
char*
char*
char*
int
int
8.
char*
char*
char*
int
9.
char*
char*
char*
int
int
10.
char*
char*
char*
int
11.
char*
int
-int
char*
12.
char*
char*
int
13.
char*
char*
. int
float
14.
char*
char*
float
float
15.
char*
char*
int
char*
16.
|
|
char*
char*
char*
float
17.
char*
char*
float
-float
float
18.
char*
char*
char*
int
int(bool)
19.
char*
char*
int
char*
20.
char*
char*
int
int
12
++
. ++.