小编She*_*aeg的帖子

对重载函数的模糊调用 - std :: to_string

在尝试将整数值插入到字符串中时,我认为当我找到std :: to_string时,我的祈祷得到了回答,但出于某种原因,当我实际尝试使用它时,Visual Studio会抱怨模棱两可.这是我的功能的当前化身:

string get_time_remaining (int elapsed)
{
    string remaining;
    string temp_string;

    int time_remaining = TimeLimit - elapsed;

    int temp_int;

    temp_int = int(time_remaining / 3600);

    if(temp_int == 0)
        remaining = "00 : ";
    else
    {
        temp_string = std::to_string(temp_int);   // Here!
        remaining = temp_string + " : ";
    }

    temp_int = time_remaining % 60 + 1;

    if(temp_int < 10)
        remaining = remaining + "0";

    temp_string = std::to_string(temp_int);

    remaining = remaining + temp_string;

    return remaining;
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试在对to_string的调用中强制转换temp_int,正如你所看到的,我甚至尝试过对应该是整数除法的结果,但无论我做什么,VS都会向我吐出:

d:\my programs\powerplay\powerplay\powerplay.cpp(1285): error C2668: …
Run Code Online (Sandbox Code Playgroud)

c++ string overloading visual-studio c++11

13
推荐指数
1
解决办法
2万
查看次数

标签 统计

c++ ×1

c++11 ×1

overloading ×1

string ×1

visual-studio ×1