原创 c++14 逆序/反轉 tuple

編譯: g++ tuple.cpp -std=c++14c++14支持函數返回auto的返回類型,c++11需要返回類型後置。由於 get<N>(tuple)中的N必須是常量,用普通的循環遍歷不了,tuple的特性很多是在編譯期完成的。 #

原创 opensuse13.1(x64) ibus 添加五筆失敗

解決辦法:我的機子上出現這種情況的原因是沒是裝python的curses庫。解決過程:13.1(x64)剛出來,界面用起來真太好了(KDE環境),桌面上組織文件夾和圖標也更方便了,沒想到安裝ibus出了點問題。現象:雖然安裝好了相關包,但在

原创 c++11筆記

constexpr        :會在編譯期計算出來 lambda: 是98、03版帶有operator()的局部仿函數 當創建lambda函數的時候,編譯器內部會生成這樣一個仿函數,並從其你作用域中取得參數傳遞給lambda函數 ###

原创 shell 腳本 變量 獲取程序輸出結果異常分析

#! /bin/bash pid=$(pgrep hello) echo ${pid}腳本名稱是 hello_test.sh當hello進程存在時,總是返回兩個值當hello進程不存在時,返回值並不爲空,總是返回一個值,多次運行,返回的值並

原创 在 curl 中 使用 ipv6

curl "http://\[2400:a480:aaaa:200::159\]:21800/api/msg-service/pull?limit=100" url 不加引號不行 參考文章:http://www.cnblogs.com/h

原创 c++ ip6編程

1,使用 getaddrinfo 來 bind 或 connect bind 和 connect 有了一種新方式,通過 getaddrinfo 返回適合 bind 和 connect 的地址,然後,通過遍歷列表,直到 bind 或 conn

原创 minizip c++ 壓縮文件及文件夾

#include <fcntl.h> #include <sys/stat.h> #include <stdio.h> #include <dirent.h> #include <string.h> #include <stdlib.h>

原创 使opensuse界面不顯示中文

grep -r "中止" /usr/後,基本上確認/usr/share/locale/zh*.mo是翻譯文件,把這些翻譯文件去掉就OK了,去掉後,yast2界面也變爲英文了,在konsole中執行的命令的提示也顯示爲英文了。

原创 並行計算開發瞭解

今天看了一些並行計算方面的資料,寫一些收穫吧,因爲研究的並不深,也並不打算做專業解釋,只是從一個程序員的角度,談一些並行計算開發方面一些初步瞭解。並行計算方面的開發庫,直到今天,搜起來有TBB,PPL,openMP,POP-cppPOP-c

原创 怎麼把內存劃分爲多個ramdisk(別人的經驗)

/dev/ram0-15,最多支持16個ramdisk設備,他們的大小,都是受ramdisk_size參數控制的環境:centos 6.5        使用:        1. 打開  vi /etc/grub.conf        

原创 opensuse13.2 安裝五筆

1,在yast2中安裝fcitx即可。2,設置:啓動fcitx,在左下角的開始那裏可以搜索fcitx,搜到後,先運行fcitx。運行後,在任務欄中會出現一個鍵盤圖標,右擊->config,在select input methon中選中要添加

原创 linux 高併發系統限制 設置

本文打算探討兩種設置方法,一種是在程序中動態設置,一種是在程序啓動前的靜態設置。先說靜態設置(具體設置見:參考csdn的一篇文章):1,在/etc/security/limits.conf中修改或者添加進程可打開文件數的軟硬設置,* sof

原创 makefile 測試

1,主Makefile,Makefile所在的目錄只有main.cpp main2.cpp,及要把生成的.o文件放到./obj目錄下SOURCES    = $(filter-out main2.cpp,$(wildcard *.cpp))

原创 std::vector erase

經調試發現,在一個for循環中,刪除遍歷中的vector元素,假設有如下聲明:std::vector<std::string> test;std::vector<std::string>::iterator it;用test.erase(i

原创 gcov 使用注意事項

以前做過一些gcov方面的工作,最近又做,發現一些踩過的坑被忘記了,又整理了一遍,防止再次出現類似情況。 使用gcov測試代碼覆蓋率的流程是:添加編譯選項和鏈接選項-----》運行程序(設置GCOV_PREFIX,設置GCOV_PREFIX