• c++类模板与函数模板区别 安静点


     类模板与函数模板区别

    类模板与函数模板区别主要有两点:

    1. 类模板没有自动类型推导的使用方式
    2. 类模板在模板参数列表中可以有默认参数

    示例:

    #include <string>
    //类模板  AgeType 默认是int类型,所以在调用的时候可以不显示填
    template<class NameType, class AgeType = int> 
    class Person
    {
    public:
        Person(NameType name, AgeType age)
        {
            this->mName = name;
            this->mAge = age;
        }
        void showPerson()
        {
            cout << "name: " << this->mName << " age: " << this->mAge << endl;
        }
    public:
        NameType mName;
        AgeType mAge;
    };
    
    //1、类模板没有自动类型推导的使用方式
    void test01()
    {
        // Person p("孙悟空", 1000); // 错误 类模板使用时候,不可以用自动类型推导
        Person <string ,int>p("孙悟空", 1000); //必须使用显示指定类型的方式,使用类模板
        p.showPerson();
    }
    
    //2、类模板在模板参数列表中可以有默认参数
    void test02()
    {
        Person <string> p("猪八戒", 999); //类模板中的模板参数列表 可以指定默认参数 所以不用给第二个参数显示指定int
        p.showPerson();
    }
    
    int main() {
    
        test01();
    
        test02();
    
        system("pause");
    
        return 0;
    }

    总结:

    • 类模板使用只能用显示指定类型方式
    • 类模板中的模板参数列表可以有默认参数
  • 相关阅读:
    jQuery.ajax()方法笔记
    Docker安装
    Linux下Nginx+keepalived实现高可用
    Linux安装Nginx
    Redis主从、哨兵、Cluster特性
    Linux搭建redis集群
    Linux搭建redis单机
    HashMap知识总结(jdk1.8)
    如何避免form提交进行页面跳转
    异步上传文件,jquery+ajax,显示进度条
  • 原文地址:https://www.cnblogs.com/anjingdian/p/16153652.html
Copyright © 2020-2023  润新知