原创 敏捷開發和瀑布開發的區別

敏捷開發   瀑布開發   很多支持敏捷的同學會說瀑布缺乏與業務的溝通和迭代次數,所以如果在項目的後期才發現要更改需求的話,則項目可能會失敗或需要重新啓動。這張圖好像也解釋了瀑布開發經常所面臨的困境。 “瀑布”對“敏捷”的駁斥 敏捷

原创 C++之using關鍵字語法屬性用法詳解

在類定義中 using 聲明將基類成員引入到派生類的定義中,例如將基類的受保護成員暴露爲派生類的公開成員。此情況下 嵌套名說明符 必須指名所定義的類的某個基類。若其名字是該基類的某個重載的成員函數的名字,則具有該名字的所有基類成員函數均被

原创 Effective C++之 Item 2: 用 consts, enums 和 inlines 取代 #defines

這個 Item 改名爲“用 compiler(編譯器)取代 preprocessor(預處理器)”也許更好一些,因爲 #define 根本就沒有被看作是語言本身的一部分。這是它很多問題中的一個。當你像下面這樣做: #define ASPE

原创 slickedit自定義代碼片段

 有些時候大致相同的代碼片段很多地方都會用到,一般都是通過複製粘貼的操作,然後進行修改。slickedit提供了一個一種方法,只需要對這個代碼片段定義一個關鍵字,等需要代碼片段的時候,只需要輸入關鍵字,然後按空格鍵就可以。 由於我創建的C

原创 Effective C++之Item 1: 將 C++ 視爲 federation of languages(語言聯合體)

    最初,C++ 僅僅是在 C 的基礎上附加了一些 object-oriented(面向對象)的特性。C++ 最初的名稱—— "C with Classes" 就非常直觀地表現了這一點。     作爲一個語言的成熟過程,C++ 的成長

原创 C++之static關鍵字語法屬性

1. static關鍵字 作用於 2. static關鍵字聲明週期 3. static函數和變量 4.static成員和函數和變量 5.static成員變量的初始化 6.static如何在其他編譯單元中訪問

原创 UEStudio高亮查找字符串

    爲了在內容中高亮需要關注的關鍵字,在UEStudio中按住Shift鍵,然後鼠標雙擊想要觀察的關鍵字,整個文件中該關鍵字都高亮了。如果要需要高亮,則直接按Esc鍵即可。  

原创 source insight 4 統一設置字體大小

source insight 4 中設置統一的字體大小步驟: 步驟一:Options-->Preferences...如下圖: 步驟二:Colors & Fonts--->Styles...如下圖:  步驟三:Font Name點擊P

原创 C++設計模式之單例模式

Singleton是一個非常常用的設計模式。幾乎所有稍大的程序都會用到它。所以構建一個線程安全,並且高效的singleton很重要。 一般來說需要滿足如下要求: 1.安全:在多線程環境下必須是線程安全的[保證併發性的安全]。 2.性能:大

原创 C++17之std::byte

  下面的例子演示了std::byte: #include <cstddef> // for std::byte std::byte b1{0x3F}; std::byte b2{0b1111'0000}; std::byte b4[

原创 C++17之std::any

  下面的例子演示了std::any: std::any a; // a is empty std::any b = 4.3; // b has value 4.3 of type double a = 42; // a has va

原创 C++17之字符串視圖

 

原创 C++17之std::variant

從C中採用的c++提供了對union的支持,union是能夠保存可能類型列表之一的對象。   #include <variant> std::variant<int, std::string> var{"hi"}; // initia

原创 C++17之摺疊表達式

從c++ 17起,有一個特性可以計算在一個參數包的所有參數上使用二進制運算符的結果(帶有一個可選的初值)。 例如,下面的函數返回所有傳遞參數的和: #include <iostream> #include <string> templ

原创 C++17之std::visit

它們必須明確地爲每種可能的類型提供函數調用操作符。然後,使用相應的過載來處理當前的替代方案。