提升字符串类型不匹配

时间:2016-11-02 17:28:15

标签: c++ c++11 boost

在以下代码中,

class MonitorResult {
public:
    void putDir(std::string && dir) { }
};

void listDir(boost::filesystem::path && dir, MonitorResult & result) {

    for(boost::filesystem::directory_iterator it(dir);
        it != boost::filesystem::directory_iterator(); ++it) {
        if(boost::filesystem::is_symlink( it->path()) ) {
            continue;
        }
        else if(boost::filesystem::is_directory(it->path())) {
            result.putDir(it->path().string() );  // Error here
        }
    }
}
  

错误:没有用于调用MonitorResult::putDir(const string&)的匹配函数      候选人是void MonitorResult::putDir(std::string&&)

我没有收到std::string,只是string。如何解决类型错误?感谢。

0 个答案:

没有答案