为什么编译器不能检测构造函数?

时间:2016-02-09 10:14:06

标签: c++ ios xcode

我有这堂课:

class FileRatio{
public:
    double x;
    double y;

    FileRatio(double xx,double yy){
        this->x = xx;
        this->y = yy;
    }
};

当我选择" build"时,XCode能够构建它。当我选择"运行",然后我得到一个"构建失败"消息:

  

没有用于初始化FileRatio的匹配构造函数

有什么问题?

编辑:我尝试通过以下方式使用它:

std::unordered_map<std::string, FileRatio>fileRatioMap;
std::vector<std::string> tokens = split(line, ',');

FileRatio fileRatio = FileRatio(stod(tokens[1]),stod(tokens[2]));
fileRatioMap[tokens[0]] = fileRatio;

后来我做了:

 FileRatio ratio = fileRatioMap[name];

编辑:编译器不会突出显示MY代码中的特定行。相反,它出现在一些名为&#34; memory&#34;这是Xcode工具链的一部分。

编辑:

整个错误消息是:

  

没有用于初始化FileRatio的匹配构造函数

突出显示的行是:

construct(_Up* __p, _Args&&... __args)
{
  ::new((void*)__p) _Up(_VSTD::forward<_Args>(__args)...);
}

0 个答案:

没有答案