这里使用了curl网络库和使用多线程来下载对应https链接的文件
对应的.h头文件:
[code]#pragma once#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define THREADS_NUMS (10)class FileInfo{public: void * pFile; size_t offset; size_t endpos; char * pUrl; pthread_t tid; size_t used; FILE * file; size_t totalLen;};size_t writeFile(void *pData, size_t dwSize, size_t dwMemb, void * pFile);int progress_callback(void *clientp, double dltotal, double dlnow, double ultotal, double ulnow);void * works(void * arg);void sighandler_func(int arg);class DownFile{ public: virtual bool downFile()=0;};class HttpDownFile:public DownFile{public: HttpDownFile(char * pUrl, char * pFile):m_pUrl(pUrl),m_pFile(pFile){ if(SIG_ERR==signal(SIGINT,sighandler_func)) { cout |