原创 std::string的replace用例(替換字符串中的某個字符)

栗子1: std::string str1="hello,world," //把最後一個逗號替換成換行符 str1.replace(str1.find_last_of(","),1,"\n"); 輸出結果: 栗子2: std::

原创 C/C++實現字符串的反向輸出

這個東西沒啥好說的,直接擼代碼吧,主要是之前筆試遇到過,記錄一下以後複習用。 void reverse_str1(char *s) { int len = strlen(s); int mid = len / 2; for (in

原创 工作環境的重要性

馬上就到2019年11月,還記得18年1月剛剛實習的場景,參加工作的時間快接近兩年了。最近被單元測試搞得比較心累,gtest和gmock的無聊程度,不亞於看馬克思理論。花10分鐘寫寫最近的經歷。 上週五在工位下放了幾張老鼠貼,昨天美滋滋的

原创 基於c++11實現的線程池

c++11的一些特性,有點模糊了,擼個c++11實現的簡易線程池玩玩,強化一下記憶。 目錄 threadManage.h threadManage.cpp main.cpp threadManage.h #pragma once #i

原创 設計模式之工廠方法模式(c++)

工廠方法模式定義 定義一個用於創建對象的接口,讓子類決定實例化哪一個類。核心結構分別是抽象工廠以及具體工廠,抽象產品以及具體產品。 #include <iostream> using namespace std; //抽象產品 cl

原创 設計模式之簡單工廠模式(c++實現)

目錄 簡單工廠模式定義 優缺點 代碼實現 簡單工廠模式定義 它又被叫做靜態工廠方法模式,是由一個工廠對象去決定創建出哪一種產品類的實例, 在工廠模式家族中,是最簡單但是很實用的模式, 優缺點 優點:根據客戶的需要,去動態實例化相關的類,去

原创 設計模式之代理模式(c++)

代理模式 #include <iostream> using namespace std; //抽象工廠 class IFactory { public: virtual ~IFactory(){}

原创 c++ vector容器-增刪改查

coding... #include <iostream> #include <vector> using namespace std; void printVecData(vector<int> &vecData) { //遍

原创 c++ map操作-增刪查改

map,自動排序。 #include <iostream> #include <map> using namespace std; typedef map<string, string> MMAP; void printf_map

原创 基於原生c++代碼實現的Http下載程序

目錄 一、gitHub地址 二、功能 三、目前存在的問題 四、界面效果 五、主要代碼 前天用Qt做了一個Http下載工具,但是使用的是Qt的ApI進行開發。所以順便用純c++擼了一個,造幾個輪子試試效果。 目前基本實現主要功能,但是暫時沒

原创 Qt實現的Http在線下載工具(支持斷點續傳功能)

目錄 一、gitHub地址 二、功能 三、目前存在的問題 四、界面效果 五、主要代碼 開發過程中遇到了一些坑,花了半天時間搞。出現了很多理論上不應該出現的bug。 做這個的目的,主要是爲了鞏固一下對Qt網絡部分接口的使用。 思路主要是,解

原创 批處理之bat腳本刪除指定文件外的所有文件與文件夾

//刪除文件 for /f "delims=" %%i in ('dir %path% /a-d /s /b') do ( if not %%~xi==.txt ( if exist "%%i" ( del /s /a /q "

原创 封裝QString字符串去除指定的字符接口

接口 void parseData(QString &str) { char array[]={'n','b','a'}; //需要去除的字符 int length = sizeof (array)/sizeof (ch

原创 再讀Effective C++ 有感

最大的感受是每一次讀都是不一樣的體會, 剛接觸c++不久的那段時間,讀起來真是晦澀難懂,當初還是把c++當做c with class來玩,根本沒有oop的概念,至於面向對象的三大特性,也是真的一看就會,結果一敲就蒙。 畢業到現在,用c++

原创 c++測試代碼塊所需時間(windows)

#include <iostream> #include <windows.h> using namespace std; int main() { double run_time = 0.0; //運行時間 _LARGE_I