Declaration de variable plus parenthese c++

Résolu
Bonjour, j'aimerais une petite explication sur la déclaration de variable (objet) en c++.
Je débute, et par réflexe (étant habitué à java) j'ai declarer une variable de cette facon :
struct C{
    C(){
        cout << "constructor C";
    }
};

int main(){
    C c(); // <- les parentheses qui me pose probleme
}

Je m'attendais bien évidemment à voir apparaitre "constructor C" dans ma console mais rien ne se passe, et comme le code compile et s'exécute j'imagine que ces parenthèses dans ce contexte ont une utilité, j'aimerais donc savoir la quelle :)

Merci.

2 réponses

  1. Contributeur
    Bonjour,

    C c(); est le prototype de la fonction c admettant 0 paramètre et renvoyant une structure de type C.
    Ce que vous voulez faire c'est C c; Cela créera la variable c (de type C) et appellera le constructeur par défaut.

    Cdlt,
    0
    1. Merci !
      0