Я новичок в программировании и изучении векторов в c ++ прямо сейчас. Я хочу отобразить адрес первого элемента вектора с использованием индекса и указателя. Программа 1 работает нормально, но яЯ получаю ошибку компиляции в программе 2 -
error: no match for ‘operator+’ (operand types are ‘std::vector<int>’ and ‘int’)
cout<<*(num+1)<<endl;
Программа 1:
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> num;
//Enter the numbers
for(int i=0;i<10;i++)
num.push_back(i);
//Display address of first element using subscript
cout<<&num[1]<<endl;
return 0;
}
Программа 2: Все коды одинаковы, кромеВместо индекса я хочу отобразить адрес с помощью указателя.
//Display address of first element using pointer
cout<<*(num+1)<<endl;
Я также попытался
cout<<(num.begin()+1)<<endl;
, но он показывает ту же ошибку.