加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 用于引用指针的可选参数?

发布时间:2020-12-16 10:52:02 所属栏目:百科 来源:网络整理
导读:如何将第二个参数声明为可选参数? template typename Tinline void Delete (T *MemoryToFree,T *MemoryToFree2 = ){ delete MemoryToFree; MemoryToFree = NULL; delete MemoryToFree2; MemoryToFree2 = NULL;} 我在=运算符之后尝试了几个东西,比如NULL,(T
如何将第二个参数声明为可选参数?

template <typename T>
inline void Delete (T *&MemoryToFree,T *&MemoryToFree2 = ){
    delete MemoryToFree;
    MemoryToFree = NULL;

    delete MemoryToFree2;
    MemoryToFree2 = NULL;

}

我在=运算符之后尝试了几个东西,比如NULL,(T *)NULL等.可以这样做吗?

编译器允许我这样做的唯一方法是使用重载…

template <typename T,typename T2>
inline void Delete (T *&MemoryToFree,T2 *&MemoryToFree2){
    delete MemoryToFree;
    MemoryToFree = NULL;

    delete MemoryToFree2;
    MemoryToFree2 = NULL;
}

解决方法

你可以重载该功能

template <typename T>
inline void Delete (T *&MemoryToFree){
        delete MemoryToFree;
        MemoryToFree = NULL;
}

template <typename T,T2 *&MemoryToFree2){
        delete MemoryToFree;
        MemoryToFree = NULL;

        delete MemoryToFree2;
        MemoryToFree2 = NULL;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读