我目前创建了一个指针列表,该指针指向另一个int列表的每第5个元素。我正在尝试打印出该指针列表,以确保它指向另一个列表的正确元素。

我尝试了多种方法来执行此操作,但是似乎都没有。

for (int* t = pointersList.begin(); t != pointersList.end(); ++t)
{
   cout << *t << endl;
}

要么
for (int i = 0; i < pointersList.size(); ++i)
{
   int* itr;
   itr = pointersList.begin()+i;
   cout << *itr;
}

我也尝试像 vector (cout << pointersList[i];)一样访问它,但是这些似乎都不起作用。

我知道指针指向元素的内存位置(这就是我使用*的位置),但是我不知道何时应该使用&或什至&*

最佳答案

请执行下列操作。这应该工作。这将使其打印您的指针值。希望这就是您想要的。

for(int a = 0; a < pointersList.size(); a ++)
   {
    std::list<int*>::iterator i = pointersList.begin();

    advance(i, a);
    int* totry = *i;
    cout << *totry;
    cout << ",";
    }

07-28 01:32