Verificando se um contêiner de sequência é contíguo na memória
Existe uma maneira de verificar se um contêiner de sequência é contíguo na memória? Algo como:
#include <iostream>
#include <vector>
#include <deque>
#include <array>
int main()
{
std::cout << std::boolalpha;
std::cout << is_contiguous<std::vector<int>>::value << '\n' // true
std::cout << is_contiguous<std::deque<int>>::value << '\n'; // false
std::cout << is_contiguous<std::array<int, 3>>::value << '\n'; // true
}
Esclarecimento
Esta pergunta está se referindo às características do tipo, e não às propriedades de uma instância específica de um tipo.