К сожалению, вы не можете сделать это в стандартном C ++, потому что vals[2]
не является константным выражением! В следующем стандарте у вас будет constexpr
(реализовано в g ++ 4.6) для простого запроса оценки во время компиляции:
#include<iostream>
using namespace std;
constexpr int vals[] = {0, 1, 2, 3, 4};
int newArray[ vals[2] ]; // vals[2] is a constant expression now!
int main(){
return vals[2];
}