簡體   English   中英

模板類型的靜態Lambda成員的C ++構造

[英]C++ Construction of Static Lambda Member of Template type

我有一個包含靜態成員的類,該成員是lambda。 Lambda確實具有固定的參數,但可能具有不同的捕獲。 這就是問題所在。默認情況下,此靜態成員不可構造。

它也必須是靜態的,我不能像在嵌入式系統上那樣使用類型擦除模式。 任何人都有解決此問題的想法或模式。

我可以在已測量大小的字節數組上進行就地構建,但是這會產生自己的問題,我想避免這種情況。

我所擁有但不喜歡的是:

編輯1:改進的示例可在此處找到更完整的示例: https : //wandbox.org/permlink/UMwsXSR6c2QYleiU

編輯2:進一步改進的示例上面的改進的版本: https : //wandbox.org/permlink/VTvGNlFRCNYG4J00

編輯3:修復了return_t https://wandbox.org/permlink/tl4BaH1zbutMV2nU的 錯誤

您可能想要做這樣的事情

template <class T>
class StaticWrapper
{
    static T* t = nullptr;
    StaticWrapper(T&& tt) { 
        static T ttt {tt};
        t = &ttt;
    }
};

相同的想法,但沒有挑剔的演員表和新的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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