gpt4 book ai didi

pointers - nullify(pointer) 和 pointer => null() 的区别

转载 作者:行者123 更新时间:2023-12-05 00:24:13 27 4
gpt4 key购买 nike

之间有什么区别

procedure(some_routine), pointer :: ptr
ptr => null()


procedure(some_routine), pointer :: ptr
nullify(ptr)

nullify 在幕后做些什么吗?或者它只是做同一件事的两种不同方式?

最佳答案

结果完全相同。赋值符号 =>也可用于变量初始化或派生类型组件的默认初始化,其中nullify语句是不可用的,但这只是一个语法问题,实际上它不是一个正确的赋值。

例如

  type t
real, pointer :: ptr => null()
end type

是组件的默认初始化,并且
 program p
real, pointer :: ptr2 => null()

是变量的初始化。变量 ptr2隐含地是 save与任何其他初始化变量一样(常见的错误来源)。

关于pointers - nullify(pointer) 和 pointer => null() 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26675185/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com