原创 Anaconda在Linux的安裝及其使用

最近在學習Python,使用Python的話一般都會用到Anaconda這個Python包和環境管理器,它能方便的創建相互獨立的開發環境,並在每個獨立的環境中自由的安裝卸載軟件包。使用起來十分的方便。 Anaconda安裝 在官網

原创 C++11中Lambda表達式之捕獲

捕獲是指一個lambda表達式將局部變量包含在捕獲列表,在捕獲列表中的參數則可以被lambda函數體使用。舉一個最簡單的例子: std::string str("this is captured value"); auto f =

原创 Linux下Deb包管理及APT的使用

Ubuntu和Redhat不同,Ubuntu使用dpdk來進性軟件包管理,這裏將總結Ubuntu下管理軟件包的幾個命令的使用方法。 dpkg 安裝一個軟件包 dpkg -i|--install package_name 標題卸載軟

原创 Linux添加頭文件和動態庫的搜索路徑的方法

1.添加頭文件搜索路徑 Linux默認頭文件搜索路徑有本地, /usr/include等,如果頭文件在別的路徑,就需有添加新的頭文件路徑。有兩種方法,一種是在gcc編譯是添加 -I 選項,另一種是將新路徑添加進C_INCLUDE_

原创 Linux下生成動態共享庫的方法

Linux上生成動態庫的方法比在Windows平臺上簡單很多。得益於強大的gcc,只需一步就可以生成共享庫。 編寫源碼 寫一個簡單的例子, MyLibrary.h和MyLibrary.c #ifndef _MYLIBRARY_H_

原创 Linux下RPM包管理及YUM的使用

在Linux下軟件安裝有兩種方式,一個是dpkg,主要應用在Debian上;另一個就是RPM,主要由Red Hat公司開發,在Fedora,CentOS等上使用。RPM包是在Linux預先編譯過的包,所以無需再編譯,安裝就比較方便。但

原创 Linux下修改PATH環境變量

Linux下得系統環境變量PATH十分重要,通過echo命令可以查詢當前PATH變量保存的內容,當我們需要添加新路徑到PATH,可以直接在後面追加: export PATH=$PATH:$HOME/bin 冒號後面便是我們要添加的路徑

原创 CentOS 7下安裝Qt5.11

Qt演化到5.10版本時,安裝包已經得到了極大的改善,變得更爲精簡,方便,將以前不同配置的安裝包集合在了一起。在CentOS下安裝Qt5.11,首先得確保Linux下已經安裝了C++編譯器、調試器,make工具以及OpenGL。這些工

原创 Linux系統中的鏈接文件及ln命令使用

鏈接文件屬於Linux文件類型中的一種,以l開頭,作用就類似於Windows下的快捷方式。Linux鏈接文件有兩種,Hard Links和Symbolic Links,即硬鏈接和符號鏈接。這兩種鏈接方式的本質區別在於inode處理上。

原创 Linux編程之strdup和strndup函數

strdup和strndup函數用於複製字符串,函數原型如下: #include <string.h> char* strdup(const char* s); char* strndup(const char* s,size_t n

原创 Linux編程之index和rindex函數

在linux編程中,index和rindex函數是兩個很有用的字符串處理函數。兩個函數原型如下: #include <string.h> char* index(const char* s,int c); char* rindex(c

原创 C++11中lambda表達式之捕獲

捕獲是指一個lambda表達式將局部變量包含在捕獲列表,在捕獲列表中的參數則可以被lambda函數體使用。舉一個最簡單的例子: std::string str("this is captured value"); auto f = [

原创 C++11的Lambda表達式基本介紹

lambda表達式是一種匿名函數,在Java,C#等高級語言中早有實現。在C++11中把lambda表達式納入了標準中,lambda表達式是C++的一種可調用對象(callable object),可以像調用普通函數一樣使用。對於那種

原创 QtConcurrent系列之run函數創建多線程

在Qt多線程編程中,我們一般使用QThread,QRunnable等類來實現多線程。除此之外,QT還提供了一個更高級的實現多線程的方式,那就是QtConcurrent框架,QtConcurrent框架中提供了許多高級的,性能更好的多線