c++ - 获取迭代器返回的字符串的 size()

标签 c++ visual-c++

vector<string> frame(const vector<string>& v){
   vector<string> ret;
   string::size_type maxlen = width(v);
   string border(maxlen + 4,'*');

   //write the top border
   ret.push_back(border);

  //write each interior row
  for(vector<string>::const_iterator i = v.begin();i != v.end();++i){
     ret.push_back("* " + *i + string(maxlen- (*i.size()),' ') + " *");
  }

  //write the bottom border
  ret.push_back(border);

  return ret;
 }

在 for 循环中,访问迭代器 i 返回的字符串的 size() 成员函数时出现错误 ----> *i.size();

“类“std::_Vector_const_iterator>>”没有成员“大小”

最佳答案

(*i​​).size(). 运算符的优先级高于 *

关于c++ - 获取迭代器返回的字符串的 size(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12769776/

相关文章:

c++ - 收到 C2628 错误

visual-studio - 如何在 Windows 中使用计时器

c++ - 为什么未验证模板模板参数中的概念?

c++ - 在具有引用字段的类上放置新的

c++ - 如何连接CComBSTR和字符串?

mfc - [VC++]如何在另一台PC上运行我的程序?

c++ - 如果 count() 是 constexpr 函数,为什么 std::array<int, count()> 不能编译?

c++ - GNU ARM 嵌入式工具链与裸机 ARM 架构的普通 gcc/g++ 之间的区别

c++ - 模板类中的模板成员特化

c++ - 如何使用 fopen 和文件指针打开多个文件?