大家好。我在自学C++,看的是《C++大学自学教程》。
我遇到下面的例子中编译要求头文件。如何添加头文件?
编译信息:
fatal error C1083: 无法打开包括文件:“quiksort.h”: No such file or directory
代码:#include <iostream>
#include <iomanip>
#include <cstdlib>
#include "quiksort.h"
int main()
{
int dim;
std::cout << "HOw many integaers?" << std::endl;
std::cin >>dim;
int* arrs = new int[dim+1];
int i;
for(i = 0; i < dim; i++)
arrs[i] = std::rand();
std::cout << std::endl << "-----unsorted-----"
<<std::endl;
for(i = 0; i < dim; i++)
std::cout<< std::setw(8) <<arrs[i];
quicksort(arrs,dim);
std::cout << std::endl << "-----sorted------"
<<std::endl;
for(i = 0; i < dim; i++)
std::cout<<std::setw(8) << arrs[i];
delete arrs;
return 0;
书中的头文件源码:#ifndef QUIKSORT_H
#define QUIKSORT_H
template<class T>
inline void swap(T& t1,T& t2)
{
T hold = t2;
t2 = t1;
t1 = hold;
}
template<class T>
void quicksort(T *array,int hi,int lo= 0)
{
while (hi >lo) {
int i =lo;
int j =hi;
do {
while (array[i] < array[lo] && i<j)
i++;
while(array[--j] >array[lo]);
if(i<j)
swap(array[j] array[i]);
}
while (i<j);
swap(array[lo],array[j]);
if(j-lo>hi - (j+1)){
quicksort(array,j-1,lo);
lo= j+1;
}
else {
quicksort(array,hi,j+1);
hi=j-1;
}
}
}
#endif
我关于头文件的提问帖:
http://topic.csdn.net/u/20111020/15/700a8ad3-910f-464a-950a-ca2c899de7dc.html