Элементы статического массива в современном Fortran

Для удобства я хотел бы иметь возможность ссылаться на элементы статической таблицы поиска, реализованной в виде массива 1d, подобного этому

Item = [1,7,2,5,3](I)

Где I — целочисленный индекс статического массива в квадратных скобках. Я знаю, что могу объявить именованный массив и использовать его, но мне интересно, есть ли подходящий синтаксис для вышеуказанного намерения.


person user1383092    schedule 18.02.2020    source источник
comment
Fuggedda about it, синтаксис Фортрана не похож на этот. Подход, который, как вы знаете, вы можете использовать, является подходом к использованию, не забывая, что статический массив может быть объявлен как parameter. Мне непонятно, почему вы хотите использовать «литерал массива» в нескольких местах, когда вы можете объявить его один раз и использовать много раз - это будет магический массив.   -  person High Performance Mark    schedule 18.02.2020
comment
Спасибо. перестану смотреть. Да, параметр статического массива - это то, что я буду делать. Это (честно!) должно использоваться только в одном месте, поэтому я бы предпочел иметь литеральные значения там, где они используются, а не в другой части кода.   -  person user1383092    schedule 18.02.2020
comment
Связанный вопрос касается результатов функции массива, но на самом деле это та же концепция для выражений массива. Как говорит High Performance Mark, синтаксиса нет даже близко, поэтому вам нужно будет сделать что-то вроде упаковки, упомянутой в других ответах.   -  person francescalus    schedule 18.02.2020
comment
Я бы предпочел иметь буквальные значения там, где они используются Вы можете воспользоваться кричаще современной конструкцией block, чтобы объявить массив рядом с его единственным использованием, если это вам подходит. Или, возможно, associate.   -  person High Performance Mark    schedule 18.02.2020
comment
Благодаря High Performance Mark. Хорошая идея - к сожалению, мой компилятор недостаточно кричаще современен. Я ценю предложения.   -  person user1383092    schedule 18.02.2020