我试图但是它生成以下编译器错误无法转换加速路径迭代器为字符串
/Users/nick/Software/nmdepend/src/Bfd.cpp: In static member function ‘static const std::string Bfd::packageName(const boost::filesystem3::path&, int)’:
/Users/nick/Software/nmdepend/src/Bfd.cpp:27: error: conversion from ‘const boost::filesystem3::path’ to non-scalar type ‘const std::string’ requested
此代码应如何摆脱nmdepend下面的代码编译
const std::string Bfd::packageName(const fs::path& path, int packageLevel)
{
fs::path::iterator p = path.end();
--p;
for(int i = 0; i < packageLevel; ++i)
--p;
return *p;
}
修改,以便字符串返回但正在尝试通过使用迭代器的操作被维护?
不应该是“返回(* p).string();” ? – 2012-02-29 00:40:42