原创 迭代器的有效性

在STL中,對於容器vector,deque,如果執行了插入或者刪除操作之後,之前的迭代器都失效了。 用例子來說明情況。 我們先構造一個vector: vector<int> v; int i = 0;

原创 STL之map&multimap

前言 STL中有兩種基本基本關聯容器:map和set。本文主要介紹map和multimap。 關聯容器指通過鍵來存儲和讀取元素的容器。 特點:map元素的形式是以鍵-值(key-value)的形式保存。鍵是map在訪問數據va

原创 進程間通信方式之有名管道

在上一篇介紹了進程間通信方式之管道,鏈接如下: http://blog.csdn.net/zhuyunfei/article/details/51087802 今天再來介紹下進程間通信方式之有名管道 1.有名管道 看名字就和

原创 QDir的使用筆記

1.保存文件 有的時候我們在保存文件的時候,希望在程序相同目錄下創建一個data文件夾用來專門保存數據結果文件。 這時候我們使用QFileDialog無法指定打開的文件路徑就是data文件夾下,此時我們可以利用QDir來幫助我

原创 Qt之校驗器

Qt之校驗器 1.QValidator類 QValidator類用於對用戶輸入文本進行校驗。 QValidator類是虛類,它有四個子類,分別是:QIntValidator,QDoubleValidator,QRegExpVal

原创 QFile源碼學習筆記

之前簡單介紹了Qt讀寫文件 Qt之讀寫文件 http://blog.csdn.net/zhuyunfei/article/details/51249378 這裏記錄下自己學習QFile的筆記。 1.在Qt之讀寫文件中,在打開模式中

原创 libev實現對文件的熱監控

一、需求來源 最近在項目開發過程中,需要在修改配置後,不重啓程序就可以熱加載配置文件。通過分析可以使用libev的ev_stat實現; 二、Demo代碼 1、關鍵點 ev_stat: 文件觀察者,監控文件屬性的變化 ev_sta

原创 go編譯錯誤及解決方式

常見錯誤解決: 1.import cycle not allowed 原因:由於循環導入包 解決方案:避免循環導入包 2…..\go-sql-driver\mysql\connection_go18.go:42: undefin

原创 Centos7環境下gcc由4.8升級到6.4

一、環境說明 1.使用的操作系統爲centos7 2.本系統內的原GCC版本爲4.8,確保機器上已安裝gcc和g++,如果沒有,通過如下面命令安裝默認版本的gcc和g++ yum install gcc yum ins

原创 STL之deque

deque是雙向隊列 頭文件是 #include <deque> 1.deque的基礎 構造函數 template< class T, class Allocator = allocator>class deque

原创 ubuntu下安裝PostgreSQL筆記

1.下載PostgreSQL數據庫: postgresql-9.6beta2.tar.gz https://www.postgresql.org/ftp/source/v9.6beta2/ 2.解壓安裝包 tar -zvxf p

原创 Qt之程序最小化托盤顯示及操作

1.功能說明 對於GUI程序,如果想要實現當最小化時,程序從任務欄消失,在系統托盤顯示一個圖標,表示此程序,並能在托盤內通過雙擊或者菜單使程序界面恢復。 2.使用的類 主要使用的此類:QSystemTrayIcon。 其中QSy

原创 STL之list

前言 list是雙向鏈表容器。當經常從容器的中間插入元素或者刪除元素時,非常高效。 #include <list> list基礎 list定義模板 template < class T, class Allocator = al

原创 STL之容器適配器

前言 在STL中定義了三種容器適配器:queue,priority_queue,和stack。 容器適配器是利用基本容器(如之前介紹的deque,vector,list)作爲自己的底層容器,適配它以實現自己特定功能的容器。 容

原创 linux掛載usb

1.確保usb的格式爲fat格式 2.建立一個掛載U盤的目錄 cd mnt mkdir usb 3.fdisk -l /dev/sd* 查看U盤的分區表信息 4.執行掛載 mount -t vfat /dev/sda1 /m