function - 如何使用任意类型作为函数参数?
问题描述
我正在尝试编写一个通用函数来获取任何类型向量中的随机元素。如何指定任意向量类型?
例如:
let list1: Vec<u32> = vec![1, 2, 3];
let list2: Vec<&str> = vec!["foo", "bar"];
fn print_a_random_element(a_list: Vec<?????>) {
// do some stuff
}
print_a_random_element(list1); // get error
print_a_random_element(list2); // get error
解决方案
特定于函数的泛型类型使用<>
函数定义上的语法声明:
fn print_a_random_element<T>(a_list: Vec<T>) {
// do some stuff
}
也可以看看:
推荐阅读
- python - 来自 MySQL 数据库的数据未显示在 PyQt5 的 QTableWidget 中
- javascript - 我应该为每个属性使用单独的 useState
- php - 对数组(“1:40”,“2:30”,“6:33”)从低到高排序?
- swiftui - 让形状在同一层
- c - 当以下代码运行时会发生什么?
- python - CSV Date Parsing in Pandas
- objective-c - How do I use realm on swift to store array of objects?
- javascript - Prevent XMLHTTPRequest from encoding url
- php - MQTT Cloud - PHP - Web Server Publish Error
- javascript - how to get the "Object HTML" instead of the "Object Object" in Vue