小编Far*_*123的帖子

类定义中的条件

我正在尝试做类似的事情:

#pragma once
#include <memory>
#include <type_traits>
#include <vector>

class B{}

template <class T>
class A
{
    private:
        std::vector<std::shared_ptr<T>> ptrVector;
    public:
        A<T>();
        void pushBack(std::shared_ptr<T> t);
        if(std::is_same<T, B>::value)
        {
            void doSth();
        }
        ~A<T>(){};
};
Run Code Online (Sandbox Code Playgroud)

不管怎么说,甚至有可能做到这样的条件吗?不,我不能继承这个类,并且只有A<B>doSth()不存在时才需要doSth()A<C>.

c++ oop templates class conditional-statements

4
推荐指数
1
解决办法
109
查看次数

标签 统计

c++ ×1

class ×1

conditional-statements ×1

oop ×1

templates ×1