Random_shuffle可以在没有<algorithm>库的情况下运行吗?

geo*_*ano 1 c++ random vector c++11

我写这个没有包括它成功运行.是srandrandom_shufflestd库中的?怪不是吗?

这里这里的链接说它们在算法库中.

#include <array>
#include <time.h>
#include <vector>
using namespace std;
    int main()                                          
    {
        vector<int> myvector;
        srand((unsigned)time(NULL));
        for (int i=0; i<10; ++i) 
            {myvector.push_back(i);}
        random_shuffle ( myvector.begin(), myvector.end() );
    }
Run Code Online (Sandbox Code Playgroud)

bam*_*s53 10

C++没有指定其他标准头中包含哪些标准头,因此它在实现之间有所不同.为了便于移植,您需要确保始终直接包含您正在使用的标头,但代码通常会在没有它的情况下进行编译.这根本不是特别的.