d)]
</span><span class="boring">fn main() {
</span>fn add&lt;T&gt;(x: T, y: T) -&gt; T
where
    T: std::ops::Add&lt;Output = T&gt; + Copy,
{
    x + y
}

let x = 1;
let y = 2;
let z = add(x, y);

<span class="boring">}</span></code></pre></pre>
<p>在上面的例子中，add 函数使用了泛型类型 T，它表示任意类型。函数签名中的 where 关键字表示泛型类型 T 需要满足的一些约束，例如实现了 std::ops::Add trait，并且该 trait 的 Output 关联类型为 T，同时还