Является ли sizeof (T) == sizeof (int)?

Я изучал проект стандарта и не могу найти то, что искал.

Если у меня есть тип стандартного макета

struct T {
   unsigned handle;
};

Тогда я знаю, чтоre,interpret_cast<unsigned*>(&t) == &t.handle для некоторыхT t;

Цель состоит в том, чтобы создатьvector<T> v и передать&v[0] на функцию C, которая ожидает указатель на массив целых чисел без знака.

Итак, стандарт определяетsizeof(T) == sizeof(unsigned) и означает ли это, что массивT будет иметь такой же макет, как массивunsigned?

Покаэтот вопрос затрагивает очень похожую тему, я спрашиваю о конкретном случае, когда и элемент данных, и класс являются стандартным макетом, а элемент данных является фундаментальным типом.

Я прочитал некоторые параграфы, которые, кажется, намекают на то, чтоможет быть это могло бы быть правдой, но ничто, что ударяет гвоздь в голову. Например:

§ 9.2.17

Два типа стандартной структуры макета (раздел 9) совместимы с макетом, если они имеют одинаковое количество элементов не статических данных, а соответствующие элементы нестатических данных (в порядке объявления) имеют типы, совместимые с макетом

Это не совсем то, что я ищу, я не думаю.

Ответы на вопрос(3)

Ваш ответ на вопрос