что мы пишем для простого массива?
Я хочу написать подтверждение, например.
enforce(input in [10,20,40]);
Ответ 1
in грустно не работает с массивом. Вы должны использовать canFind или search, определенные в std.algorithmhttp://dlang.org/phobos/std_algorithm.html. Поскольку вы только хотите знать, присутствует ли он, а не там, где это возможно, canFind - правильный инструмент.
import std.algorithm: canFind;
if (my_array.canFind(42)) { stuff }
Ответ 2
В дополнение к canFind, также есть countUntil, который предоставит вам индекс первого вхождения.
Обратите внимание, что ключевое слово D "in" ищет ключи ассоциативного массива, а не его значения: