在push_front属性上有点困惑。 intList.push_front(2 * intList.back())到底会做什么?

时间:2012-10-16 17:27:15

标签: c++ iterator linked-list

我有一个链接列表,其中包含一些名为intList的数字。什么会

intList.push_front(2 * intList.back()); 

到我的名单?

2 个答案:

答案 0 :(得分:5)

它将在列表前面的列表的最后一个元素的值前加两倍,将列表的长度增加一。这假定您的列表包含可以使用operator*乘以整数的类型的元素。

请注意,列表不能为空。在空列表上调用back()是未定义的行为。

参见相关参考资料herehere

为了便于说明,请考虑包含

的列表
  

1,2,3,4

该操作会修改列表,使其包含

  

8,1,2,3,4

列表的正面在左边。

答案 1 :(得分:0)

它从列表中取出最后一个元素,并在列表前面添加两倍的值。