@daniil14056

Почему первый элемент не инициализированного массива array указывает а последний элемент вектора созданного до него?

int main(int argc, char *argv[])
{
          vector<int>v4{1,2,3,4};
           v4.push_back(889);

          array<int,3> arr;
          cout<< *(arr.begin()); // 889 . почему?


Так же если поиграться с указателем. То есть выводить cout<< *(arr.begin()-4) // 1. а *(arr.brgin()+2)// 2.
Это так называемая куча?
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
gbg
@gbg Куратор тега C++
Любые ответы на любые вопросы
Нипочему. Обращение к неинициализированной переменной есть неопределенное поведение, эксплуатировать его в своих программах нельзя.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы