原创 QT——支持顯示中文,不出現亂碼

在main文件中引入頭文件#include <QTextCodec> 並在main函數中加入 QTextCodec::setCodecForTr(QTextCodec::codecForLocale());   //顯示中文設置

原创 QT——創建標準文件對話框

頭文件: #ifndef DIALOG_H #define DIALOG_H #include <QDialog> class QPushButton; class QLineEdit; class QGridLayout; cl

原创 QT創建顏色對話框

接續上節https://blog.csdn.net/xunye_dream/article/details/83002991 頭文件: #ifndef DIALOG_H #define DIALOG_H #include <QDial

原创 中秋晨跑雜想記事

可能是最近睡眠不足,昨晚拿起《月亮與六便士》翻了幾頁就來了睡意,於是關上臺燈,便早早的進入了夢鄉。由於多年的習慣,今晨依舊早起。記得書上哲人說,偉大的人每天要做兩件不願做的事:一是早上不願下牀,還是下了;晚上不願上牀,還是上了。很遺憾我不

原创 類型函數(type function)

在C和C++中,我們常見的是值函數(value function),即函數接收的參數是某些值,而且函數的返回結果也是值。 至於類型函數(type function),即函數接收某些類型的實參,並生成一個類型作爲函數的返回結果。 例子: 1

原创 確定class類型

功能:確定某個類型是否是class類型。 template<typename T> class IsClassT { private: typedef char One; typedef struct { char a[2]; }

原创 確定元素的類型

功能:給定一個容器的類型,能夠給出容器元素的類型。 實現方法(技術):採用局部特化。 #include <iostream> #include <vector> #include <stack> #include <list> #inc

原创 trait類——類型萃取

       這裏實現一個通用的計算數組類的數據求和函數。C++中用模板實現多態屬於靜態多態,trait類就是做爲模板參數以實現靜態多態。根據不同的模板參數類型,以實現不同模板數據類型所需的功能。其實說白了,就是利用模板的一些基本規則,將

原创 policy類——策略類

在看這篇文前,請先查看此處https://blog.csdn.net/xunye_dream/article/details/82946580,因兩篇有銜接。 先看上篇博文的實現求和的最終實現代碼。摘錄如下: template<type

原创 利用typename使用模板類型參數來定義模板類型中的類型的變量

直接上代碼。 #include <iostream> template<typename T> void PrintStlContainer(T const& coll) { typename T::const_iterator p

原创 實現Stack容器類

#include <vector> #include <iostream> template<typename T> struct Stack { void push(T const& elem); void pop(); T

原创 利用變量的生命週期實現在main入口前執行一段程序

直接上代碼了。 #include <iostream> using namespace std; class ShowLog { public: ShowLog() { cout << __func__ << ": Hell

原创 利用C++11特性實現最大值和最小值的模板函數

直接上代碼 template<typename T> inline auto max(T const& x, T const& y) -> decltype(sizeof(x) > sizeof(y) ? x : y) { retur

原创 QLayout——UI的基本佈局

                                        上述三種佈局中的添加控件的方法:addWidget()、addLayout()。 1、addWidget(QWidget *widget, int fromR

原创 列表的修改——range()

>>> L = [1, 2, 3, 4, 5] >>> for i in range(len(L)): L[i] += 10 >>> L [11, 12, 13, 14, 15] 另一種修改方式 >>> L = [x + 10