Visual studio 2013 C++ standard library [closed]

2019-06-15 13:51发布

I am using visual studio 2013 to program the following code in c++:

#include <iostream>

using namespace std; 

int main()
{
    std::cout << "Please enter two integers: " << std::endl;
    int v1 = 0, v2 = 0;
    std::cin >> v1 >> v2; 
    int current = std::min(v1, v2);
    int max = std::max(v1, v2);
    while (current <= max)
    {
        std::cout << current << std::endl;
        ++current;
    }
    return 0;

}

This code was meant to solve: "Write a program that prompts the user for two integers. Print each number in the range specified by those two integers."

I was confused at first, but found that std min/max could help after searching. However, I am getting errors when trying to compile, telling me that namespace "std" has no member "min" and no member "max."

Did I do something wrong, or does Visual Studio 2013 not include min/max?

2条回答
我欲成王,谁敢阻挡
2楼-- · 2019-06-15 14:18

It looks to me like you forgot to #include <algorithm>.

Your code should look like this:

#include <iostream>
#include <algorithm> // notice this

using namespace std; 

int main()
{
    std::cout << "Please enter two integers: " << std::endl;
    int v1 = 0, v2 = 0;
    std::cin >> v1 >> v2; 
    int current = std::min(v1, v2);
    int max = std::max(v1, v2);
    while (current <= max)
    {
        std::cout << current << std::endl;
        ++current;
    }
    return 0;
}
查看更多
我欲成王,谁敢阻挡
3楼-- · 2019-06-15 14:33

Add

#include <algorithm>

before using std::min or std::max

查看更多
登录 后发表回答