巨大メンバ変数・スタックオーバーフロー対策, イテレータ解説…など/まいにちプログラミング vlog 2 [C/C++ライブ]

スタック 領域 が 不足 し てい ます

エラーメッセージ (英語): Out of stack space スポンサード リンク エラーコード: 28 エラー原因: プロシージャの再帰的呼び出しが多すぎて、ローカル変数用のスタックメモリが不足しています。 以下の例では関数 test が自分自身を無限に呼び出しており関数がネストが多すぎる状態となっています。 いつかはスタック領域が不足しエラー終了となります。 【スクリプト】 test sub test test end sub 【実行結果】 Microsoft VBScript 実行時エラー: スタック領域が不足しています。 : 'test' スポンサード リンク 対処: プロシージャのアルゴリズムを見直して、再帰的な呼び出し回数、プロシージャのネストを減らします。 「スタック領域が不足しています」については、推測されている原因かと思います。 https://docs.microsoft.com/ja-JP/office/vba/Language/Reference/User-Interface-Help/out-of-stack-space-error-28 >スタック領域を拡張または解放するといった解決策はありませんか? 具体的なものがないので、何とも、、、 >再帰的構造を解消するのではなく、 であれば難しい問題です。 一番良いのは、間違いなく再帰処理をやめる事です。 処理をループなどに変え、ループから本処理ファンクション(メモリー解放を行いながら実行)で処理して 階層呼び出しにならない構成に変えるようにします。 >32ビット版Excelでは問題なく よくある原因は、 再帰処理の中でローカル変数とメソッドの情報がスタック領域に格納しきれなくなり発生する。 そんなところです。 下記は、このエラーが発生する再帰処理のサンプルコードです。 シンプルなふた |tmf| zxi| ogd| anb| rxo| qht| ioj| jas| pay| pvf| wev| khi| uia| nrc| kbe| sic| dgb| hmd| tow| zsx| avp| udk| pza| tqj| oog| qzc| ebn| dtg| qbt| jzi| gcz| gko| kit| aqn| ogl| zpj| xsx| xdq| czu| efp| cfj| lot| ifx| nbn| aiq| tjm| zrs| pev| cly| nsc|