原创 C++中的默認函數與default和delete用法
一、類中的默認函數 a.類中默認的成員函數 1.默認構造函數 2.默認析構函數 3.拷貝構造函數 4.拷貝賦值函數 5.移動構造函數 6.移動拷貝函數 b.類中自定義的操作符函數 1.operator
原创 vim的visual模式
在可視化模式下,可以對一個文本塊的整體進行操作。例如,首先高亮選中一部分文本,然後用d命令刪除這個文本塊。可視化模式的好處在於,你可以在做改動之前,就看到操作將影響的文本。可視化模式可以分爲以下三種: 用v命令進入的字符可視化模式(Ch
原创 do...while(0)的妙用
在C++中,有三種類型的循環語句:for, while, 和do...while, 但是在一般應用中作循環時, 我們可能用for和while要多一些,do...while相對不受重視。 但是,最近
原创 c++11 內存模型解讀
關於亂序 首先需要明確一個普遍存在,但卻未必人人都注意到的事實:程序並不總是按照源碼中的順序被執行的,此謂之亂序,亂序產生的原因可能有好幾種: 編譯器出於優化的目的,在編譯階段將源碼的順序進行交換。程序執行期間,指令流水被 cpu
原创 main函數的三個參數
main函數的前兩個參數交常用,第三個參數參見: http://blog.csdn.net/ixsea/article/details/6686308 下面我寫了代碼來驗證每個參數: #include<stdio.h> int mai
原创 ubuntu12.04-32位,安裝KLEE及使用工具過程中遇到的問題
1.安裝klee出現的問題: 前面都沒有錯,最後make check時出現:make[1]: ***[check-local] Error 1 網上查說make check運行時可能需要root權限。不對,make chec
原创 ubuntu下安裝apache http server
在ubuntu下。下載了apache http server直接編譯安裝的話,configure時會出現“APR not found ”的錯誤,是因爲其所依賴的軟件包沒有安裝。安裝過程一步步理清依賴關係,正確使用命令行選項,安裝apac
原创 C++順序容器的capacity和reserve方法
verctor容器這樣的順序容器在內存的存儲空間是連續的,而其後面的存儲空間可能被其他數據佔用,當在需要添加新的元素時,vector就需要重新分配存儲空間以連續存儲原來元素和新添加的元素。 爲了使vector實現快速的內
原创 關於C語言中宏定義的高級運用
1、# (stringizing)字符串化操作符。 其作用是:將宏定義中的傳入參數名轉換成用一對雙引號括起來參數名字符串。其只能用於有傳入參數的宏定義中,且必須置於宏定義體中的參數名前。 如: #define example(i
原创 ubuntu下查看源代碼工具:ctags+taglist,另加understand
1.ctags直接apt-get就行,安裝完後在需要的目錄下執行: ctags -R* 目的是建立個源代碼文件的索引。然後就可以實現各函數間的跳轉了。 2.taglist需要自己下載,下載完了正常安裝,它是聯合vim使用的,因此可以在vi
原创 左值表達式 右值表達式(C/C++)
何謂對象? 這裏所說的對象是廣義上的,而不僅僅是狹義的類/對象(class/object)。 在C/C++中,所謂的對象指的是執行環境中一塊存儲區域(a region of storage),該存儲區域中的內容則代表了該對象的值(
原创 ubuntu下安裝KLEE方法
參考KLEE官網主頁http://klee.github.io/klee/‘ 首先安裝llvm-gcc,官網上說KLEE運用的系統及CPU最好是Linux x86-64,而我的筆記本是i686(即x86-32)的,所以不是最好的,官網介紹
原创 迭代器的算數運算
支持隨機訪問的迭代器纔可以使用:iter+n,iter-n,iter-iter的操作。如vector。 list和map這類不支持以上三種操作,因爲它們不支持隨機訪問,因此它們只支持自增和自減操作。 那麼
原创 ubuntu12.04-64位系統上安裝s2e過程
S2E工具適用平臺: host OS: 64位ubuntu12.04或者64位Mac OS guest OS:To run S2E, you need a QEMU-compatible virtual machine
原创 ubuntu下掛載win7共享目錄
PS:此方法可用於局域網一臺ubuntu的主機和win7的主機之間共享文件夾。也可用於ubuntu下虛擬機中系統與另一win7主機共享文件夾。非常方便實用! 1.在win7下設置共享目錄: 在d盤新建一個文件夾share,右鍵選擇設