コードのパフォーマンスを向上させるために、コンパイル段階で相対距離を使用することがわかっています。たとえば、2つのローカル整数の距離が4であることが分かります。 私の質問は、コンパイル時に未知のサイズの配列についてです。コンパイル段階で不明なサイズ配列の割り当てをC++がどのように処理するか
たとえば、コンパイラには、ローカル配列に割り当てるメモリ量次のコードで: どのようにそれはローカル変数のLOCAL2との間の相対距離を知っているし、サイズ
#include <iostream>
using namespace std;
int main() {
int size = std::getchar();
int arr[size];
int local2;
return 0;
}
これは有効なC++ではありません。 – dandan78
が正常にコンパイルされました。https://ideone.com/SsvycN – Idan
@ldanコンパイルしないとは言いませんでした。私はちょうどそれが有効なC + +ではないと言った。 – dandan78