C++ QList takeLast()和removeLast()冲突

C++ QList takeLast()和removeLast()冲突,c++,qt,C++,Qt,当我尝试运行此代码时: QStringList foo; foo << "bar"; QString last; last = foo.takeLast(); qDebug() << last; foo.removeLast(); QStringList-foo; foo这是此类API中的一个非常常见的约定,“take”一词应该按字面意思理解-此函数实际上会删除最后一个元素,即删除它并返回它。您可以在以下网站上阅读: 删除列表中的最后一项并将其返回 可以使用获取最后一个

当我尝试运行此代码时:

QStringList foo;
foo << "bar";
QString last;
last = foo.takeLast();
qDebug() << last;
foo.removeLast();
QStringList-foo;

foo这是此类API中的一个非常常见的约定,“take”一词应该按字面意思理解-此函数实际上会删除最后一个元素,即删除它并返回它。您可以在以下网站上阅读:

删除列表中的最后一项并将其返回


可以使用获取最后一个元素,而无需删除它。这也是Qt的普遍约定,即getter的命名不带“get”一词,而只是它们“获取”的对象的名称。这在此类API中是一个非常常见的约定,即“take”一词应该按字面意思理解——此函数实际上会删除最后一个元素,即删除它并返回它。您可以在以下网站上阅读:

删除列表中的最后一项并将其返回

可以使用获取最后一个元素,而无需删除它。这也是Qt的流行惯例,即getter的命名不带“get”一词,而只是它们“获取”的对象的名称。

QList::takeLast()
从列表中删除最后一个元素,如中所述

改用
QList::last()
(或者等效地使用
QList::back()
)。
QList::takeLast()
从列表中删除最后一个元素,如中所述


<强>使用<代码> qList::(),(或,等价地,<代码> qList::()(代码)> < /强>

H@ @ USS313179,如果这个或任何答案已经解决了你的问题,请考虑通过点击复选标记来接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。HI @ USSR1313179如果这个或任何答案已经解决了你的问题,请考虑通过点击复选标记来接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。