原创 xshell中解決文本粘貼後錯亂的問題

: set paste + 回車,然後粘貼即可

原创 python序列化和反序列化pb消息

參考鏈接:https://www.jianshu.com/p/091b99beb6bc 1.編輯location.proto文件 syntax = "proto2"; package location; message Summa

原创 工廠方法FactoryMethod

簡單工廠的幾個缺點: 不符合對修改關閉,對擴展開發的設計原則; 如果產品過多,影響代碼美觀性; 不符合實際。 工廠方法在一定程度上解決了簡單工廠存在的弊端: 每個產品都應該有自己的工廠,而不是放在一個工廠中創建; 如果需要添

原创 從C++11開始的typedef與using

typedef : 給一個已有,可能比較長比較複雜的類型 重新命名一個新的、簡單的、見名知意的別名。 重定義一個類型: typedef old_type_name new_type_name 重定義一個函數指針類型: type

原创 google protobuf之一個使用的簡單類型進行序列化和反序列化的實例

先寫一個文件尾綴爲proto文本文件,message.proto,內容如下: syntax = "proto3"; //指定使用的proto版本,這裏是protobuf3 //import "user.proto"; //

原创 使用dlsym()來mock已經完成code的單元測試中的系統調用------鏈接期墊片(link seam)

最近,在給公司的一些模塊添加單元測試,金主們要求項目中分支的覆蓋率達到80%,經過一段時間的工作,添加了很多的測試用例,但是分支覆蓋率還是不理想,主要原因主要是: 單元中涉及好多的分支都是對一些系統調用不用返回值的處理,比如下面

原创 std::function實現原理簡述

實際上,每個function實例都根據函數類型的中返回值和參數類型推演出一個特例化,然後用類的成員變量去保留用這個函數類型的產生的函數指針,使用的時候實際上調用該類的小括號運算符重載operator()。 int sum(int

原创 C++11後的typedef與using

typedef : 給一個已有,可能比較長比較複雜的類型 重新命名一個新的、簡單的、見名知意的別名。 重定義一個類型: typedef old_type_name new_type_name 重定義一個函數指針類型: type

原创 std::function簡介與使用

類模板 std::function 是通用多態函數封裝器。 std::function 的實例能存儲、複製及調用任何可調用 (Callable) 目標——函數、 lambda 表達式、 bind 表達式或其他函數對象,還有指向成員

原创 c++typename

作用一: #include <iostream> #include <vector> #include <algorithm> //所有泛型算法 #include <functional>//所有函數對象 #include <ct

原创 c++多線程運行錯誤:terminate called without an active exception(運行錯誤)

#include <iostream> #include <vector> #include <ctime> #include <thread> template <typename container> void print_

原创 c++STL綁定器bind1st和bind2nd

一元函數對象:對象重載了operator(),並且只含有一個形參變量; 二元函數對象:對象重載了operator(),含有兩個形參變量; 如: template<class _Ty = void> struct gr

原创 Curent branch is not synced with latest origin/master!

本地分支沒有與遠程master同步,所以導致代碼無法提交,該設置在本地。 Locking support detected on remote "origin". Consider enabling it with: $ gi

原创 std::sort

std::sort:將給定區間數據進行排序,默認由小到大. #include <iostream> #include <functional> //函數對象 #include <algorithm> //泛型算法庫 #includ

原创 TI-RTOS多任務編程

最近在做一些關於一些驅動向TI板子的移植集成的事情,在這裏簡單的記錄一下。本文主要敘述如何進行多任務的編程,以及我在編程中遇到的一些不解。 Task組成部分:任務函數,任務參數(屬性),任務堆棧. 實際上Task是sys/bi