簡體   English   中英

創建對模板虛擬類c ++的引用

[英]create reference to template virtual class c++

我有這樣的課

template<typename T>
    class ConnectionStatus:
    {
    public:

        virtual void setStatus(const T& status) = 0;
        virtual T getStatus() = 0;
    };

我想在另一個類中引用這個類,所以我要這樣做: ConnectionStatus<typename T>& status; 但編譯器表示error: template argument 1 is invalid 那么我怎樣才能引用模板虛擬類呢? 感謝您的任何幫助。

主要有兩種可能性:什么時候知道該模板參數應用於您的類,什么時候不知道。

對於前者,這是提供它的簡單情況(例如,在這種情況下為int ):

struct MyClass
{
    ConnectionStatus<int> &m_connection_status;
};

如果您不知道參數,則將您的類設為模板類:

template <typename ConnectionStatusType>
struct MyClass
{
    ConnectionStatus<ConnectionStatusType> &m_connection_status;
};

暫無
暫無

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

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