原创 高級冒泡排序-->用模板仿函數再次實現

#include<iostream> using namespace std; ///////////////////////////使用模板類及仿函數來實現冒泡排序/////////////////////////////// temp

原创 C++關於異常

在介紹C++異常處理之前先回顧一下在C語言中我們是如何來處理異常的。 1、終止程序(除數爲零) 2、返回錯誤值(errno,GetLastError()獲取系統出現的最近的錯誤碼) 3、返回合法值,讓程序處於某種非法狀態(atoi函數)

原创 Linux -->在目錄內創建文件、顯示文件以及拷貝文件到一個目錄都需要什麼權限?

1、首先,我們來看一下在目錄內創建文件需要什麼權限呢 (1)我們在當前創建目錄hhh,並且修改其屬性爲100,因爲我們知道進入目錄僅僅需要用戶的可執行程序即可。 (2)接着我們將目錄權限改爲500,爲hhh目錄加上讀權限 由上圖可見依

原创 C++實現對稱矩陣以及壓縮存儲

#include<iostream> using namespace std; ///////////////////////////實現對稱矩陣以及壓縮存儲///////////////////////////////////// te

原创 Linux下簡易進度條的實現

生活在高科技時代的我們,在電腦或手機上游戲娛樂時,通常會看到加載頁面或者下載東西的過程中會出現一個不斷變長直到填滿整個小長方形的條狀物,專業一點來說它就叫做進度條。 下面我們可以用C語言代碼自己來實現一個簡易的進度條。 首先要實現進度條我

原创 C語言實現順序表--靜態

///////////////////////////C語言實現靜態順序表/////////////////////// #include<stdio.h> #include<assert.h> #define MaxSize 5 ty

原创 C++ 模板

當我們在編寫一個通用的加法時,首先我們會想到函數重載,就像下面這段代碼 int Add(const int left,const int right) { return left + right; } float Add(const

原创 C語言實現單鏈表

#include<stdio.h> #include<malloc.h> #include<assert.h> typedef int DataType; typedef struct Node { DataType data;//數

原创 進入某個目錄需要什麼權限

作爲剛剛接觸Linux的小白,學習了一些簡單權限和小命令後,我們來看一個簡單的小問題。 我們需要什麼權限才能進入某個目錄呢 首先我們在普通用戶下驗證: 1.先創建一個目錄file1,看到其起始屬性爲775。 2.然後我們將目錄屬性改爲7

原创 Centos下vim的簡單配置

vim是Linux下強大的編輯器,我們可以自己進行各種配置和插件的安裝。 首先在目錄/etc/下面,有個名爲vimrc的文件,裏面就是默認配置,這是系統中公共的vim配置文件,對所有用戶都有效。而我們一般自己配置時在當前用戶的主目錄下新建

原创 shared_ptr 循環引用問題

前面學習智能指針的時候已經模擬實現過C++標準庫中的auto_ptr兩種方法,還有scoped_ptr(即boost庫中的unique_ptr)、scoped_array、以及shared_ptr。 現在我們對使用引用計數的shared

原创 實現Stack的基本操作

簡單來說,棧是一種特殊的線性表,只允許在固定一端(棧頂)進行插入和刪除元素的操作。因此棧又被稱爲後進先出的線性表。下面就來看看它可以進行哪些基本的操作。在進行擴容時,如果是對棧中基本數據類型的操作我們使用淺拷貝memcpy,否則用=進行拷

原创 用stat命令查看文件時的三個時間點

在Linux中我們用stat來顯示文件的信息,那麼顯示的信息中Access、Modify、Change這三個類型的時間又代表着什麼意思呢。 (1)首先我們touch一個file,可以用stat命令查看三個時間信息 如圖所示,會出現3個類

原创 實現循環隊列的基本操作

template<typename T> class Queue { public: Queue(size_t capacity = 5) :_front(0) ,_rear(0) ,_capacity(capacity+3

原创 淺析C++標準庫與boost庫中的智能指針

什麼是智能指針呢,它是行爲類似於指針的類對象,但這種對象還有其他功能。我們爲什麼要封裝智能指針類對象呢?這是因爲C++中的動態內存需要用戶自己來維護,動態開闢的空間,在出函數作用域或者程序正常退出前必須釋放掉,否則會造成內存泄漏,所以我