函数参数必须带’/'结尾
void rmdir(const std::string& dir)
{
struct _finddata_t fb;
long long handle = _findfirst((dir + '*').c_str(), &fb);//查找第一个子文件: .
if(handle != -1){//
_findnext(handle, &fb);//去除第二个子文件: ..
while(0 == _findnext(handle, &fb)){//查找下一个子文件
if(fb.attrib == 16){//16代表是目录
rmdir(dir + fb.name + '/');//递归调用删除目录
}else{
remove((dir + fb.name).c_str());//用标准函数删除文件
}
}
_findclose(handle);
}
rmdir(dir.c_str());//用标准函数删除目录
}