vector<int> v = {10, 20, 30};
cout << *prev(v.end());
输出的结果是( )。
- A. 未定义行为:end() 是界外哨兵,根本不能靠近,更不能对它做 prev
- B. 30:prev(v.end()) 返回 end 前一个位置的迭代器,恰好落在最后一个元素上
- C. 10:prev 从 end 一路退回首元素
- D. 编译错误:end() 返回的迭代器不能参与 prev 运算
vector<int> v = {10, 20, 30};
cout << *prev(v.end());
输出的结果是( )。