一个模板,三种类型

👁️ 1 人浏览 💬 0 人评论 ❤️ 添加收藏

(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)

#include <iostream>
#include <string>

/* 参数写 const T & ,字符串就不用白拷一份 */
template <typename T>
const T &bigger(const T &a, const T &b) { return (a > b) ? a : b; }

template <typename T>
T twice(T x) { return x + x; }

int main() {
    std::cout << bigger(3, 9) << "/"
              << bigger(1.5, 0.5) << "/"
              << bigger(std::string("apple"), std::string("pear")) << "/"
              << twice(5) << "/" << twice(std::string("ab")) << "\n";
    return 0;
}
提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论