English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
Toutes les catégories

voici un extrait de code+commentaire repris "servilement à la virgule près" par plusieurs sites avec les mêmes explications et commentaires que j'arrive pas à comprendre:
[début extrait]
Un objet instancié n'est pas une
référence (un pointeur) mais une
variable, sorte de ''tableau associatif
muni de méthodes''. On peut s'en
rendre compte sur une copie d'objet :
$auto= new Véhicule( 4 );
$moto= $auto;
$moto-> nb_roues= 2;
echo $auto-> nb_roues;
// 2 et non 4 => $auto et $moto sont
deux objets distincts.
[fin extrait]
je précise que sur un des sites il y a ces précisions:
[début précisions]
class Véhicule
{
var $nb_roues;
function Véhicule( $nb_roues )
{
$this-> nb_roues= $nb_roues;
}
function NbRoues()
{
return $this-> nb_roues;
}
...
}
$moto= new Véhicule( 2 );
[fin précisions]
Certes j'ai déjà de bonnes bases sur la POO, j'ai du mal à concevoir ces explications car je crois qu'on doit avoir echo $auto-> nb_roues; qui donne 4 et non 2. J'aimerai avoir plus d'arguments pour le contrai

2006-12-24 06:37:37 · 1 réponses · demandé par diamana 1 dans Informatique et internet Programmation

1 réponses

Salut !!

Comme on te l'a dit dans ta question suivante, le code décrit la manipulation suivante.

On créée un objet auto.
On "renomme" la variable auto en moto.
Donc si tu odifies le nombre de roues de ton objet auto, le nombre de roues de moto sera le même car auto et moto ne sont qu'un seul et même objet.

Pour avoir 2 valuers différentes, ik aurait fallu instancier 2 objets différents.

Voilà si tu veux plus de précisions, n"hésite pas à me faire signe...

Bonnes fêtes à toutes et à tous !!!

2006-12-25 06:48:13 · answer #1 · answered by FifPower 4 · 0 0

fedest.com, questions and answers