Je suis un modeleur qui programme ... Je ne m'appellerais jamais un programmeur, pourtant je programme en C# et en FORTRAN. J'ai un modèle FORTRAN que j'ai connecté à du code C# via une DLL. J'ai trouvé que je dois avoir un bloc commun afin de garder les variables en mémoire dans la DLL. J'ai également constaté que je ne peux pas employer plus d'une déclaration d'inclusion ... mon dossier d'inclusion pour les variables communes sont tous sans étiquette. Chapman (2008) "FORTRAN 95/2003 pour les scientifiques et les ingénieurs" déclare "La déclaration commune non marquée ne devrait jamais être utilisée ...".blocs communs, FORTRAN, et DLLs
Comment puis-je m'assurer que la mémoire n'est pas corrompue dans mon fichier commun? Je suppose que je peux expérimenter, mais j'espérais avoir de bons conseils à ce sujet. J'utilise le Lahey-F ver 7.2 dans Microsoft Visual Studio 2008
Quelqu'un, des idées?
Merci, je vais y jeter un coup d'oeil. – DavidAS
Merci d'avoir posté un message. Oui, je suis d'accord avec l'utilisation de modules; mon programme est structuré autour de modules. Cependant, les modules (avec des variables locales et globales (publiques)) ne restent pas en mémoire lorsqu'ils sont utilisés dans une DLL. Au moins, je n'ai pas été capable de le démontrer. Si quelqu'un sait comment garder les variables privées et publiques dans la mémoire active dans une DLL, s'il vous plaît dites-moi comment. À mon avis, la documentation ne le démontre pas. – DavidAS
@ M.S.B Merci - c'est ainsi que je me souviens de Fortan 7/IV en général, sauf que généralement nous avons utilisé COMMON/DATAPOOL /. @David mon expérience et ma compréhension de DLL m'amène à croire que la seule façon de décider ceci est de produire un petit exemple de DLL et de le poster avec les sources afin que je puisse regarder le démontage. –