cost 102 ms
按類型或枚舉調度執行策略?

[英]Dispatch on execution policy by type or enum?

賞金將在 5 天后到期。 此問題的答案有資格獲得+100聲望賞金。 glades想讓更多人關注這個問題。 在 C++ 中,我在基於策略的設計模式中基本上有兩種選擇:我可以使用單獨的類型(基於選擇重載)或指定一個包含所有策略的枚舉,我將在運行時分派它們。 現在編寫基於策略的設計的首選方式是什么? ...

如何聲明一個對字符串不執行任何操作、與其他策略具有一致簽名並在編譯時評估的策略類

[英]How to declare a policy class that does nothing to a string, has consistent signature with other policies and is evaluated at compile-time

我將一組策略類放在一起,這些類對字符串進行許多操作。 我希望這些政策是可交換的,但“什么都不做”政策對我來說也是有問題的,因為: 我看不到如何避免使用移動語義進行復制,同時與姐妹策略保持相同(非移動)接口 編譯器應該知道對策略的調用可以在編譯時內聯和評估,但它不接受constexpr ,因為 ...

零依賴特征定義

[英]Zero-dependency traits definition

我正在試驗並嘗試制作一個基於模板策略的元庫。 示例案例是為設備驅動程序聚合 2 個類。 這些類實現了device_logic和connection_logic ,它們不需要依賴彼此的類型: 設備邏輯僅取決於通信協議(消息)。 connection_logic 只是字節 arrays 的來源,可能使 ...

如何將 Variadic CRTP 基類設置為派生 class 的朋友

[英]How to set Variadic CRTP base classes to be friend's of the derived class

問題的主要部分是使用基於策略的設計和可變參數模板的CRTP 。 從策略無法訪問主要/派生 class 的受保護或私有成員。 由於使用可變參數模板,我不能將策略聲明為朋友。 問題是,如何將所有策略類設置為派生 class 的朋友。 鑒於此 CRTP 解決方案,什么是支持多個 inheritance 級 ...

基於 C++ 策略的設計:繼承與組合

[英]C++ policy based design: Inheritance vs composition

在 Meeting C++ 2019 上,Jon Kalb 發表了關於模板技術的演講,並提到了策略類。 來源見這里: https : //youtu.be/MLV4IVc4SwI?t=1815 有問題的有趣代碼片段是: 我經常看到這種類型的設計,我想知道這里的繼承是否比組合有任何真正的優勢。 ...

將 Python 代碼稱為基於策略的設計的措施是什么?

[英]What are the measures to call a Python code a policy-based design?

描述 我想知道我展示的代碼是否可以被視為 Python 中基於策略的設計的一個例子。 另外,我想知道您是否看到過使用類似這個示例的 Python 模塊,以便我可以向他們學習? 我在一篇文章中寫了更多關於這種方法的細節和例子。 最近,我需要為我正在處理的 Python 模塊設計類似基於策略的設計 ...

用C ++命名的任意大小的元組

[英]Named, arbitrary size tuple in C++

我正在創建一個庫來從貝葉斯模型中抽取樣本,作為R包的后端。 事實是, MCMC算法往往會給調試帶來困難。 而且, Rcpp 沒有簡單的調試方法 。 在實踐中,我最終得到了大量的“ cout”語句。 問題是,當我嘗試將所有內容移至獨立庫時,我意識到我愛上了Rcpp的List 。 這是 ...

C ++模板元編程:從模板模板參數繼承

[英]C++ Template Meta Programming: Inheritance from template template parameter

這段代碼編譯(至少使用C ++ 14之后的GNU GCC編譯器)。 但是,我不喜歡使用的語法 由於它不應該要求Buffer專門化:我希望Buffer被識別為模板模板參數,如: 然后我希望mutable_storage結構識別模板專業化 (當然不允許,因為“緩沖區”不是 ...

如果模板參數列表很大,則方便使用宏

[英]Convenienve of macros in case of a large template argument list

在我的設計中,我有一個針對大量參數進行模板化的類(將其Shell為Shell )。 這些參數中的大多數是我在項目中定義的其他類,因為我為項目選擇了“基於策略的設計”方法。 類聲明看起來像這樣: 前兩個參數是應使用的整數和浮點類型。 其余參數是項目中定義的特定策略。 這種類 ...

創建一個類模板,該模板可以將自身創建的類作為參數

[英]Creating a class template which can take a class made from itself as an argument

有沒有一種方法可以創建一個類模板,該類模板可以將自身的實例化作為模板參數? 我希望能夠在我的代碼中這樣說: 我嘗試使用可變參數模板參數定義這樣的類模板,以避免最終陷入無限循環(模板必須定義一個模板模板參數,該模板模板參數本身需要模板參數,而模板參數也必須采用模板參數,依此類推。 ) ...

C ++策略對象和構建器模式

[英]C++ policy objects and the builder pattern

我有一些構建Object類Builder 。 我計划用策略對象替換一些Object的膽量,例如能夠設置一些容器類型Storage 。 具體來說,我想使用Builder來設置Object策略對象,如果未指定,則恢復為默認值。 在我的頭頂上,像這樣: 問題的症結在於:我可以將typed ...

基於C ++策略的設計

[英]C++ Policy Based Design

我在基於 Alexandrescu的基於策略的設計中不了解的是,在沒有任何共同點的情況下創建了新類型,在我看來,應該以某種方式來代表許多共同點。 例如, std::string和std::basic_string<> :分配器是非常內部的東西,在我看來,使用該類的代碼不應知道該 ...

以有狀態策略類為代價來分離主機和策略類,而不遵循Effective C ++的條款26

[英]Decoupling host and policy classes at the cost of stateful policy classes and not following Item 26 of Effective C++

這篇文章包括描述基於策略的設計的直接實現的問題,提出替代實現,分析提議的實現以及尋求幫助以正確權衡分析中的不同因素。 對於這篇文章的長度,我深表歉意,並希望您能堅持下去。 問題描述 假設我們使用基於策略的設計,如下所示: 上述主機類和策略之間存在一定程度的耦合 :如果Foo ...

具有不同接口的策略類

[英]Policy classes with differing interfaces

假設一個具有策略FooPolicy的算法。 實現此策略的策略類具有靜態成員函數foo ,但是,對於其中一些, foo采用int參數,而對於其他實例,它不采用。 我試圖通過constexpr靜態數據成員啟用這些具有不同接口的策略類: 此代碼無法編譯。 gcc 4.8.2給出錯誤: ...

與構建靈活設計的模板相比,多重繼承的機制

[英]Mechanics of multiple inheritance compared to templates wrt building flexible designs

這是由於過於寬泛而擱置的問題的較窄版本。 在現代C ++設計的第6-7頁,Andrei Alexandrescu列出了三種方式,其中多重繼承比構建靈活設計的模板弱。 特別是,他指出多重繼承提供的機制很差(根據我對上下文的理解,方括號和格式中的文本是我的): 在這樣的設置[即多重 ...

命名模板參數是在最新標准中還是在現代編譯器中實現?

[英]Are named template arguments in the newest Standard or implemented in a contemporary compiler?

命名模板參數可以說是C ++中非常重要的功能。 即,給定一個類模板,該類模板具有許多帶有默認參數的模板參數,則此功能將允許用戶為這些參數的任意子集提供參數。 Vandervoorde和Josuttis撰寫的“ C ++模板:完整指南”將整個16.1節用於實現命名模板參數的效果。 同一本 ...

具有可變數據的 C++ 策略設計

[英]C++ policy design with variable data

關於這個主題有很多信息。 這更像是一個設計問題,但我會舉一些例子。 假設我真的想傳遞一個配置文件類,它規定了用戶的策略。 以上都很好,但讓我們假設有很多政策需要閱讀。5 似乎是一個現實世界的數字,盡管它可能更多。 然后,假設此配置文件將應用於數百個實例,其中 5 個策略差異很大。 要啟動,策略 ...

在基於策略的類中保留構造的隱含性

[英]Preserving the implicitness of construction in a policy-based class

考慮一個基於策略的智能指針類Ptr,只有一個策略可以防止在NULL狀態下解除引用它(不知何故)。 讓我們考慮兩種這樣的政策: NotNull NoChecking 由於NotNull策略更具限制性,我們希望允許從Ptr< T, NoChecking >到P ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM