這函數庫能讓 C++ 擁有
垃圾回收的能力,並提供相關的配套支援,以 C++11 的標準編寫,可以很容易跨平台。
以源碼的形式發佈,允許任何方式的應用,包括用於開發商用軟體,但不淮增、刪、改,以維持標準的一致性,有發現錯誤或建議,請留言,謝謝!!
下載點:
CxxlMan2_Src_r230.zip |
- 修改過 UTF8_String 整個程式庫可用於 c++17 和 c++20 標準。內部仍採用 std::string,使用 STL 不會有額外開銷
- 通過 ubuntu-22.04.1-desktop-amd64 測試
|
CxxlMan2_Src_r225.zip |
- 在 Win10 下可支援 c++17 標準,須在 CMake 的 CMAKE_CXX_FLAGS 設置 c++17 標準,其他作業系統未測試。
- 在 Win10 可適用於 x86 / x64,其他平台未測試
- 更改 cxxlAVL_Tree 的 Delete***() 成員函數回傳值,改為被刪除的子節點,不用取得和刪除分兩次執行
- 修正 Semaphore 一個 Bug
|
CxxlMan2_Src_r222.zip |
- 更改 Regex_MultipleReplace 的 fmt 參數形態
- 更改 UniqueTxtCompositeImport() 和 NonUniqueTxtCompositeImport() 的
defName 參數形態
- UTF8STRING.HPP fix bug
- SLIST.HPP fix bug
- cxxlAVL_Tree 新增一個 isExist() 成員函數
- 修正 UTF8_String 對右值 std::string 的處理,效能得到提升
|
CxxlMan2_Src_r214.zip |
-
cxxlAVL_Tree 的建構函數增加 OnDelObj_arg 參數
-
提供 cxxlCM_GetElementP()
-
修訂 DELEGATE.HPP 及 DELEGATE2.HPP 一個 BUG
-
修正 SList
-
經 mingw-w64\x86_64-7.1.0-posix-seh-rt_v5-rev1 編譯器除錯
|
CxxlMan2_Src_r199.zip |
-
為 UTF8_String 提供 Compare() 比較函數,UTF8_String 也可以處理 NULL 資料源的包裹
-
更改 cxxlList 的 Sort() 及 For_each() 的參數用法
-
cxxlComposite 的 Export() 參數改用 std::function
-
將處理比較的 virtual cxxlAVL_Tree::Comp() 改成採用 std::function 的方式,並提供一個
GetComp() 成員函數
-
cxxlAVL_Tree::cxxlList_Create() 增加一個 std::function 的參數作為過瀘用,原先的
cxxlList_CreateFilter() 虛擬函數已移除
-
將 Delegate<T> 和 Delegate2<T> 的 struct DelegateErr_NoBind 移出,放在
DELEGATE.HPP
-
因使用方法做了一些修改,和舊版有些不相容
-
增加一個 FixSlash() 函數
|
CxxlMan2_Src_r179.zip |
-
重新調整永續儲存處理程式碼架構,配合 介面繼承+組合代替繼承,ref() 可不必在呼叫父類別的 ref()
-
UTF8_String 建構函數增加 const char 單一字元參數
-
永續儲存修正對 UTF8_String 處理的 bug
|
CxxlMan2_Src_r174.zip |
增加一個 BM_SEARCH.HPP
|
CxxlMan2_Src_r168.zip |
優化 THREADMGR.HPP
修改 Delegate 和 Delegate2 的
IBind::Function() 宣告的 bug
ThreadLimit 和 ThreadPool 增加 Clear()
清除尚未處理的任務
修改一些小 bug 能通過 MinGW 編譯 |
CxxlMan2_Src_r162.zip |
-
修改 Semaphore 建構函數多了一個 ThreadMaxNum 參數,並內定參數值為 {0,0}
-
增加 THREADMGR.HPP
-
修改 cxxlAVL_Tree<>::Comp() 不再為純虛擬函數,所以可不繼承直接使用
-
修改多處的 bug
|
CxxlMan2_Src_r160.zip |
修改核心中的 _YanLuoWang 建構方式為 &_YanLuoWang = *new
YanLuoWang,原本為變數形態,應用程式結束時,有時會出現 mutex 還在 busy 的例外錯誤,更改後 _YanLuoWang
沒有解構的機會 |
CxxlMan2_Src_r159.zip |
增加一個 EventSender 元件,以及修改一些 bug |
CxxlMan2_Src_r157.zip |
-
為 cxxlAVL_Tree 增加 GetKeyList()
-
把 cxxlList_t::PT_PS_TYPE 獨立出來,比較方便使用
-
為 Semaphore 增加一個多載函數 Semaphore<F>::Wait(F WaitEvent),進入等待,會先呼叫
WaitEvent()
-
為垃圾處理核心增加一個函數 Wait_cxxlObjectDeathQueue_Emptied()
|
CxxlMan2_Src_r152.zip |
Carry_TLC 及 Carry_MDC 的 GroupReplace,修改其 Key 為 GroupReplace_Key
|
CxxlMan2_Src_r151.zip |
-
Carry_TLC 及 Carry_MDC 增加 GroupReplace 選項
-
ElementRegDelegate 增加 Import()
-
SaveFilter 及 LoadFilter 增加 Stream()
|
CxxlMan2_Src_r141.zip |
主要在修改 CMakeLists.txt、版本選擇... 以適應 linux |
CxxlMan2_Src_r137.zip |
增加 cxxlCM_GetFullDllName() CM 的轉助函數、ICM::Get_ElementRegDelegate(),修改一些
bug |
CxxlMan2_Src_r129.zip |
修改以下這些智能指標的組成方式,提升執行效率:
Smart_Ptr、UTF8_String、PSmart_Ptr、PSmart_Set、P2Smart_Ptr 、P2Smart_Set |
CxxlMan2_Src_r127.zip |
|
參考手冊下載:
CxxlMan2_Help_20220716.zip
另外在 Linux 須用到 uuid 函數庫,若不存在須安裝套件,比如在 Ubuntu 用以下命令安裝:
sudo apt-get install uuid-dev
沒有留言:
張貼留言