Я хочу создать функцию с переменной аргументом, которая будет соответствовать ContigiousContainer стандарта C++. Моя функция должна работать с любым типом, который реализует эту концепцию, например, std::vector, std::array, А также с любыми нетрадиционными, нестандартными, но подходящими типами (сторонние смежные контейнеры).
Однако я не могу получить доступ к идентификатору ContigiousContainer. Я не нашел библиотеки, которая, будучи включенной, могла бы сказать моему компилятору, что я подразумеваю под словом "ContigiousContainer".
Как бы вы это сделали?
Или мне следует составить собственную реализацию концепции ContigiousContainer, используя написанные мной стандартные требования и требования, чтобы утверждать, что переменная аргумента моей функции (и/или параметр шаблона типа моей функции, если он шаблонизирован) имеет метод size(), имеет метод Begin(), определяет необходимый итератор типы и т. д. и т. п. (тонны требований).