問題タブ [static-order-fiasco]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - クラス内の変数の初期化中に静的な初期化順序の大失敗がありますか
古いコードを c++98 から c++14 にリファクタリングしようとしています。また、古い gcc (c++98) と新しい gcc (c++14) の両方でコンパイルする必要があります。これは、古いコードがどのように見えるかです (これは、複雑なコードの完全に構成された例です。このクラスの static const は、別のクラスで使用されます)。
C++ 11 からは int と enum のみがクラス宣言でのみ初期化できるようです。
質問: 上記のようにクラス宣言内で静的 const 変数を初期化することにより、静的初期化順序の大失敗を回避できますか? 上記のコードでは、この静的な初期化順序の問題は見られませんでした。静的な double と float を .cpp ファイルに移動した場合、問題について心配する必要がありますか?