La différence entre extern et input - page 7

 
Vladimir Simakov:
Le fait est que l'extern n'était tout simplement pas nécessaire. Une variable déclarée globalement dans un fichier du projet est accessible dans tous ses fichiers. Mais pourquoi ? Question aux créateurs.

Pouvoir compiler un fichier unique en travaillant seul sur celui-ci. Au lieu de passer à un fichier différent à chaque fois sans attendre la compilation de l'ensemble du projet.

 
Igor Makanu:

Un exemple est nécessaire, j'ai essayé d'utiliser extern dans les bibliothèques - cela ne fonctionne pashttps://www.mql5.com/ru/forum/316795/page2#comment_12259472.

En effet, toute variable globale déclarée dans une bibliothèque ne sera visible nulle part ailleurs que dans cette bibliothèque. Ils doivent également déclarer une variable globale dans une bibliothèque et se demander pourquoi elle ne peut être vue nulle part ailleurs. #import n'est pas #include

 
Dmitry Fedoseev:

Ainsi, toute variable globale déclarée dans une bibliothèque ne sera visible nulle part ailleurs que dans cette bibliothèque. Ils doivent également déclarer une variable globale dans une bibliothèque et se demander pourquoi elle n'est pas visible ailleurs. #import n'est pas #include

extern existait à l'époque de MS DOS et tout était lié à des unités compilées.

pourquoi avons-nous cette conversation ? - un administrateur est venu expliquer comment et pourquoi le mot clé extern a été implémenté dans MQL. J'ai écrit mon opinion sur l'échange à l'aide de variables globales avec le modificateur extern - il est préférable de ne pas utiliser

 
Igor Makanu:

extern existait déjà à l'époque de MS DOS, et tout était parfaitement lié aux unités compilées.

Quel est le but de cette discussion ? - un administrateur est venu expliquer comment et pourquoi le mot clé extern a été implémenté dans MQL. j'ai écrit mon opinion sur l'échange à l'aide de variables globales avec le modificateur extern - il est préférable de ne pas l'utiliser.

Et qu'est-ce que les bibliothèques ont à voir avec ça ? Et qu'en est-il des unités ? - Les unités sont des subtilités du compilateur, que vous n'avez pas besoin de connaître et qu'il est même préférable de ne pas connaître, afin de ne pas tirer de mauvaises conclusions. Et qu'est-ce que l'administration a expliqué qui n'était pas clair hier ? Ce qui n'est pas clair, c'est comment vous ne pouvez pas faire la distinction entre l'inlude et l'import. Incloud et les importations existaient sous le règne de Gorokh, et ils fonctionnaient tout aussi bien qu'aujourd'hui.

Raison: