7 votes

C++ : Création d'une variable de type placeholder non initialisée plutôt que d'un objet par défaut

Je suis en train de passer de Java à C++ et j'éprouve quelques difficultés lorsqu'un concept couramment utilisé en Java n'est pas directement transposé en C++. Par exemple, en Java, je ferais quelque chose comme :

Fruit GetFruit(String fruitName) {
    Fruit fruit;
    if(fruitName == "apple") fruit = new Fruit("apple");
    else if(fruitName == "banana") fruit = new Fruit("banana");
    else fruit = new Fruit("kumquat"); //'cause who really wants to eat a kumquat?

    return fruit;
}

Bien sûr, en C++, le Fruit fruit; crée en fait un fruit. Cela signifie-t-il que je dois avoir un constructeur par défaut ? Cela ne semble pas sûr ! Et si mon fruit par défaut s'échappait ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X