【C++】Template模板

创作不易,本篇文章如果帮助到了你,还请点赞 关注支持一下♡>𖥦<)!!

主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!

🔥c++系列专栏:C/C++零基础到精通 🔥

给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ

c语言内容💖:

专栏:c语言之路重点知识整合

【c语言】全部知识点总结


目录

Template

在 C++ 中 模板被用于编写通用、可复用的代码,通过使用模板,可以避免重复编写相似的代码,提高代码的复用性和可维护性。

模板分为函数模板 和类模板 ,模板是泛型编程的基础,可以代表多个类型

函数模板

用于定义通用的函数,可以接受不同的参数,模板 T 会自动推导类型

add 函数中可以接受 int型与 float型参数

cpp 复制代码
#include <iostream>
using namespace std;

template <typename T>
T add(T& a,T& b)
{
    return a + b;
}

int main()
{
    int a = 1;
    int b = 2;
    cout << add(a, b) << endl;

    float c = 1.1;
    float d = 2.2;
    cout << add(c, d) << endl;

    //显式指定类型
    cout << add<int>(a, b) << endl;
    cout << add<float>(c, d) << endl;
    return 0;
}

类模板

类模板用于定义通用的类,可以根据不同的类型进行实例化

cpp 复制代码
#include <iostream>
using namespace std;


template <typename T>
class A
{
public:
    void setvalue(T value)
    {
        m_value = value;
    }
    T getvalue()
    {
        return m_value;
    }
private:
    T m_value;
};

int main()
{
    A<int> a;
    a.setvalue(1);
    cout << a.getvalue() << endl;

    A<double> b;
    b.setvalue(1.1);
    cout << b.getvalue() << endl;

    return 0;
}

#

模板传递多个参数时并使用默认值指定时,默认值需要从右向左依次不间断 ---

|--------------------------------------|
| 大家的点赞、收藏、关注将是我更新的最大动力! 欢迎留言或私信建议或问题。 |

|---------------------------------------------------------------|
| 大家的支持和反馈对我来说意义重大,我会继续不断努力提供有价值的内容!如果本文哪里有错误的地方还请大家多多指出(●'◡'●) |

相关推荐
weixin_448119942 小时前
Datawhale DeepSeek Harness 技术入门与架构原理 笔记4
笔记·架构
H.莓飛9 小时前
【数据结构】排序_OJ题(一):计数、桶与排序后的处理
java·开发语言·数据结构
wangchunyu11410 小时前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
爱喝水的鱼丶11 小时前
SAP-ABAP:ECC→S/4HANA ABAP 迁移升级指南——程序改造、语法兼容与性能优化 导语
运维·开发语言·性能优化·sap·abap·经验交流·开发交流
小灰灰搞电子11 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
外收内放11 小时前
面向对象高级(实战案例)
开发语言·python·学习
·present·12 小时前
CSAPP(lecture 4_01)
c语言·c++
FPGA小迷弟12 小时前
用 Claude Code 重构遗留系统:从评估到落地的完整实践指南
c++·python·ai·plotly·django·ai编程·claude
薛定e的猫咪12 小时前
(ICLR 2020)MAML 靠的不是快速学习,而是特征复用
人工智能·深度学习·学习·算法·机器学习
fanruitian12 小时前
python else用法
开发语言·python