Construction d'une classe - Exemple de C++ for Dummies
Bonjour,
Voilà, aujourd'hui, sur le chat du site ( il y a le lien, juste au dessus ), on me montre cette ligne là:
Code:
1 2
|
Student& student = *new Student; |
Qui vient de cet exemple là:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
class Student
{
public:
int semesterHours;
float gpa;
Student valFriend;
Student& refFriend;
Student* ptrFriend;
};
int main(int nNumberofArgs, char* pszArgs[])
{
// the following declares a reference off of the heap
// (simple enough)
Student& student = *new Student;
student.gpa = 10;
// ditto
Student& studentFriend = *new Student;
studentFriend.gpa = 20;
// the following copies the value of one Student
// object into the second
student.valFriend = studentFriend;
// this doesn't work at all
Student& refFriend;
refFriend = studentFriend;
// this does work
student.pFriend = &studentFriend;
return 0;
} |
Cela me laisse vraiment perplexe.
Déjà que l'écriture me semble un peu bancale (même si après réflexion je l'a comprends), car personnellement j'écris ceci:
Code:
1 2
|
Student* student = new Student(); |
Donc si vous pouviez m'expliquer les avantages d'une telle écriture ( celle du livre ) je vous en serai reconnaissant.
Merci d'avance