Fortran純粋関数でのローカル変数の宣言と初期化

ヘルツシュプルング

私は次のような関数を持っています:

PURE FUNCTION simulate(initial_state, time_specification)
        TYPE(ocean), INTENT(IN) :: initial_state
        TYPE(simulation_time), INTENT(IN) :: time_specification
        TYPE(ocean) :: simulate
        REAL :: t = 0.0      
        ! etc
END FUNCTION simulate

gfortran 4.8.1は、次のことを通知します。

 REAL :: t = 0.0
                1
Error: Initialization of variable at (1) is not allowed in a PURE procedure

私が理解しているように、SAVE属性がない限り、純粋関数内でローカル変数を使用できるはずです。だから私は何が間違っているのですか?

フランチェスカラス

最新のFortranでは、初期化はを意味しSAVEます。F2008から5.2.3

共通ブロックにない変数の明示的な初期化は、SAVE属性を意味します。これは、明示的な指定によって確認できます。

ローカル変数を使用できますが、

real t
t = 0

これは初期化ではありません。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

グローバル変数の初期化は、関数内の静的変数の初期化と同じですか?

分類Dev

Haskellの純粋関数が変数のローカルコピーを変更することは可能ですか?

分類Dev

変数の宣言と初期化?

分類Dev

ローカル変数の初期化

分類Dev

ローカル変数の初期化とnullの違いは?

分類Dev

TS-Nodeのグローバル変数の初期化で宣言する方法は?

分類Dev

TS-Nodeのグローバル変数の初期化で宣言する方法は?

分類Dev

javascript-関数式と宣言のローカル変数のスコープ

分類Dev

while ループ内の c++ 宣言と初期化変数

分類Dev

int main、初期化されていないメモリ、初期化されていないローカル変数内での関数の使用に関する問題

分類Dev

Goのローカルスコープでの「変数宣言」と「短い変数宣言」の違い

分類Dev

CとC ++の関数呼び出しでグローバル変数を初期化する

分類Dev

複数の関数呼び出しによるローカル静的変数の初期化

分類Dev

純粋なJavaのCitrusでグローバル変数を設定する方法

分類Dev

Swift変数の宣言と初期化

分類Dev

多変数の宣言と初期化

分類Dev

不変変数と純粋関数の更新状態

分類Dev

Fortranでの変数の宣言

分類Dev

特定のname_scopeの下でローカル変数を初期化する方法

分類Dev

純粋なJSでの関数コールバック

分類Dev

Fortranサブルーチン/関数引数の名前と宣言

分類Dev

グローバル変数と初期化を宣言する方法

分類Dev

テストケースブロック内のRobotFrameworkでの変数の宣言と初期化

分類Dev

ローカル静的変数の初期化はスレッドセーフです

分類Dev

純粋関数のGCC最適化

分類Dev

ローカル変数の初期化を理解する

分類Dev

ローカル変数の初期化をBashする

分類Dev

Javaスイッチ内での変数の宣言と初期化

分類Dev

関数内のローカル変数の初期化、追加、保存、および関数を使用したその変数へのアクセス

Related 関連記事

  1. 1

    グローバル変数の初期化は、関数内の静的変数の初期化と同じですか?

  2. 2

    Haskellの純粋関数が変数のローカルコピーを変更することは可能ですか?

  3. 3

    変数の宣言と初期化?

  4. 4

    ローカル変数の初期化

  5. 5

    ローカル変数の初期化とnullの違いは?

  6. 6

    TS-Nodeのグローバル変数の初期化で宣言する方法は?

  7. 7

    TS-Nodeのグローバル変数の初期化で宣言する方法は?

  8. 8

    javascript-関数式と宣言のローカル変数のスコープ

  9. 9

    while ループ内の c++ 宣言と初期化変数

  10. 10

    int main、初期化されていないメモリ、初期化されていないローカル変数内での関数の使用に関する問題

  11. 11

    Goのローカルスコープでの「変数宣言」と「短い変数宣言」の違い

  12. 12

    CとC ++の関数呼び出しでグローバル変数を初期化する

  13. 13

    複数の関数呼び出しによるローカル静的変数の初期化

  14. 14

    純粋なJavaのCitrusでグローバル変数を設定する方法

  15. 15

    Swift変数の宣言と初期化

  16. 16

    多変数の宣言と初期化

  17. 17

    不変変数と純粋関数の更新状態

  18. 18

    Fortranでの変数の宣言

  19. 19

    特定のname_scopeの下でローカル変数を初期化する方法

  20. 20

    純粋なJSでの関数コールバック

  21. 21

    Fortranサブルーチン/関数引数の名前と宣言

  22. 22

    グローバル変数と初期化を宣言する方法

  23. 23

    テストケースブロック内のRobotFrameworkでの変数の宣言と初期化

  24. 24

    ローカル静的変数の初期化はスレッドセーフです

  25. 25

    純粋関数のGCC最適化

  26. 26

    ローカル変数の初期化を理解する

  27. 27

    ローカル変数の初期化をBashする

  28. 28

    Javaスイッチ内での変数の宣言と初期化

  29. 29

    関数内のローカル変数の初期化、追加、保存、および関数を使用したその変数へのアクセス

ホットタグ

アーカイブ