Je me demandais depuis un moment pourquoi l'initialisation de données en les transmettant à une fonction n'est pas permise malgré le fait que les constructeurs qui sont une sorte de fonction puissent être appelés à l'échelle globale, donc si nous avons quelque chose comme un tableau à portée mondiale, il ne peut pas être initialisé par une fonction, mais si elle était un objet d'une structure à portée mondiale, alors il pourrait être initialisé à l'aide d'un constructeur à la portée:Pourquoi l'initialisation de données à l'échelle globale en les transmettant à certaines fonctions n'est pas possible?
//global scope
char charArray[100];//can't be initialized using any function at global scope but in other scopes it could by being passed to some function
struct Test{
public:
Test(){
//initialization
}
char charArray[100];
};
Test obj();//now charArray can be initialized using constructor at global scope
Votre question est basée sur une prémisse incorrecte, et n'a donc aucun sens. 'charArray' * peut * être initialisé en le passant à une fonction dans la portée globale. – AnT
@AndreyT_Si vous avez un exemple, puis afficher, sinon regarder la réponse de Mark B. – Pooria