// 定义第一个处理函数
fn add_numbers(a: f64, b: f64) -> f64 {
a + b
}
// 定义第二个处理函数
fn multiply_numbers(a: f64, b: f64) -> f64 {
a * b
}
// 高阶函数,接受一个函数指针作为参数
fn process_numbers(func: fn(f64, f64) -> f64, a: f64, b: f64) -> f64 {
func(a, b)
}
fn main() {
let num1 = 5.0;
let num2 = 3.0;
// 使用add_numbers函数调用process_numbers
let result_add = process_numbers(add_numbers, num1, num2);
println!("Addition result: {}", result_add);
// 使用multiply_numbers函数调用process_numbers
let result_multiply = process_numbers(multiply_numbers, num1, num2);
println!("Multiplication result: {}", result_multiply);
}