C++中的<>运算符,又被称为“尖括号运算符”,是C++中比较重要的一种运算符。它的用法有很多,最常见的用法是用于模板类型的实例化。
用于模板类型实例化
当定义一个模板类时,我们可以使用<>运算符来实例化这个模板类,例如:
templateclass MyClass { // ... }; MyClass myClass; // 使用<>运算符实例化MyClass类,指定类型为int
上面的代码中,我们使用<>运算符来实例化MyClass类,指定类型为int。这样,MyClass类就可以接收int类型的变量。
用于函数模板
C++中的函数也可以使用模板,例如:
templateT max(T a, T b) { return a > b ? a : b; }
上面的函数max是一个模板函数,它接收两个参数,返回较大的那个。我们可以使用<>运算符来调用这个函数,例如:
int a = 10; int b = 20; int c = max(a, b); // 使用<>运算符调用max函数,指定类型为int
上面的代码中,我们使用<>运算符来调用max函数,指定类型为int。这样,max函数就可以接收int类型的变量。
用于模板类型推导
C++11中引入了模板类型推导,允许我们使用<>运算符来自动推导模板类型,例如:
MyClass myClass(10); // 使用<>运算符自动推导MyClass类型,推导出int
上面的代码中,我们使用<>运算符来自动推导MyClass类型,推导出int。这样,MyClass类就可以接收int类型的变量。
用于容器模板
C++中的容器模板,比如vector、map等,也可以使用<>运算符来指定元素的类型,例如:
vectormyVec; // 使用<>运算符指定vector的元素类型为int
上面的代码中,我们使用<>运算符来指定vector的元素类型为int。这样,vector就可以接收int类型的变量。
C++中的<>运算符可以用于模板类型的实例化、函数模板的调用、模板类型的推导以及容器模板的指定,是C++中比较重要的一种运算符。