1

C++ である種のアルゴリズムを実装する小さなプログラムを開発しています。このタスクのために、いくつかのジェネレーターとソート関数を持つ小さなオブジェクトを定義することにしました。ただし、randomGenerator() 関数では、「エラー C3861: 'rand': 識別子が見つかりません」が発生します。ctime lib を含めても消えず、このエラーが発生する理由はないと思います...

コードは次のとおりです。

SortLib.h

#ifndef SORTLIB_H
#define SORTLIB_H

#include<ctime>

class SortLib
{
public:

    void randomGenerator( int* userArray, int upperLimit);
    void orderedGenerator( int* userArray, int upperLimit );
    void reverseOrderedGenerator( int* userArray, int upperLimit );

    void insertionSort( int* userArray, int upperLimit );
    void selectionSortSort( int* userArray, int upperLimit );
    void bubbleSort( int* userArray, int upperLimit );
    void mergeSort( int* userArray, int upperLimit );

};

#endif

SortLib.cpp

#include "SortLib.h"

void SortLib::randomGenerator( int* userArray, int upperLimit)
{

    for(int i=0; i<upperLimit; i++ )
    {
        userArray[i] = ( rand() % upperLimit );
    }
}

何が起こっているかについて何か考えはありますか?ありがとう!

4

1 に答える 1

4

コードの最初でこれを行います。

#include <cstdlib>

Rand 関数は、C 標準汎用ユーティリティ ライブラリに含まれています。

于 2012-10-10T18:26:20.520 に答える