首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在(现代) Fortran中指定运行时常量?

如何在(现代) Fortran中指定运行时常量?
EN

Stack Overflow用户
提问于 2015-08-11 08:25:44
回答 2查看 146关注 0票数 3

我正在做一个Fortran2008项目,在这个项目中,我使用read语句从输入文件中读取一些参数(包括标量和数组)。我想强制要求这些参数在读入后不能修改。我如何才能做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2015-08-11 09:16:44

模块变量可以被赋予PROTECTED属性,这可以防止使用相关模块的代码通过变量名修改模块变量。

然而,这并不阻止从定义模块或其后代子模块内对变量进行修改,或通过使用关联名称以外的方式对变量进行修改(例如,通过与同一事物关联的指针),或阻止不符合要求的Fortran代码修改变量(例如,通过使用关联名称用作具有修改相应虚拟对象的隐式接口的过程的实际参数)。

票数 4
EN

Stack Overflow用户

发布于 2015-08-11 09:03:20

在fortran 90中,您可以将具有这些变量的模块定义为私有成员。让模块只定义从文件中读取变量的函数,以及返回值的getter函数。并且模块中没有其他函数。

我没有使用fortran 2003和fortran 2008提供的OO功能,但场景将是相似的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31931259

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档