 Rust 程序设计语言 简体中文版 1.85.0unit_label 的值来调用函数,所以程序输出包含这 些值。 52/562Rust 程序设计语言 简体中文版 语句和表达式 函数体由一系列的语句和一个可选的结尾表达式构成。目前为止,我们提到的函数还不包含结 尾表达式,不过你已经见过作为语句一部分的表达式。因为 Rust 是一门基于表达式 (expression-based)的语言,这是一个需要理解的重要区别。其他语言并没有这样的区别, 所以让我们看看语句与 值的 时候 • 当有大量数据并希望在确保数据不被拷贝的情况下转移所有权的时候 • 当希望拥有一个值并只关心它的类型是否实现了特定 trait 而不是其具体类型的时候 我们会在“box 允许创建递归类型”部分展示第一种场景。在第二种情况中,转移大量数据的所 有权可能会花费很长的时间,因为数据在栈上进行了拷贝。为了改善这种情况下的性能,可以 通过 box 将这些数据储存在堆上。接着,只有少量的指针数据在栈上被拷贝。第三种情况被 时无法定义的类型的例子。 Box 允许创建递归类型 递归类型(recursive type)的值可以拥有另一个同类型的值作为其自身的一部分。但是这会产 生一个问题,因为 Rust 需要在编译时知道类型占用多少空间。递归类型的值嵌套理论上可以 无限地进行下去,所以 Rust 不知道递归类型需要多少空间。因为 box 有一个已知的大小,所 以通过在循环类型定义中插入 box,就可以创建递归类型了。 320/562Rust0 码力 | 562 页 | 3.23 MB | 25 天前3 Rust 程序设计语言 简体中文版 1.85.0unit_label 的值来调用函数,所以程序输出包含这 些值。 52/562Rust 程序设计语言 简体中文版 语句和表达式 函数体由一系列的语句和一个可选的结尾表达式构成。目前为止,我们提到的函数还不包含结 尾表达式,不过你已经见过作为语句一部分的表达式。因为 Rust 是一门基于表达式 (expression-based)的语言,这是一个需要理解的重要区别。其他语言并没有这样的区别, 所以让我们看看语句与 值的 时候 • 当有大量数据并希望在确保数据不被拷贝的情况下转移所有权的时候 • 当希望拥有一个值并只关心它的类型是否实现了特定 trait 而不是其具体类型的时候 我们会在“box 允许创建递归类型”部分展示第一种场景。在第二种情况中,转移大量数据的所 有权可能会花费很长的时间,因为数据在栈上进行了拷贝。为了改善这种情况下的性能,可以 通过 box 将这些数据储存在堆上。接着,只有少量的指针数据在栈上被拷贝。第三种情况被 时无法定义的类型的例子。 Box 允许创建递归类型 递归类型(recursive type)的值可以拥有另一个同类型的值作为其自身的一部分。但是这会产 生一个问题,因为 Rust 需要在编译时知道类型占用多少空间。递归类型的值嵌套理论上可以 无限地进行下去,所以 Rust 不知道递归类型需要多少空间。因为 box 有一个已知的大小,所 以通过在循环类型定义中插入 box,就可以创建递归类型了。 320/562Rust0 码力 | 562 页 | 3.23 MB | 25 天前3
 人工智能安全治理框架 1.0类监督和控制责任。 (d)服务提供者应让使用者了解人工智能产品的精确度,在人工智能决 策有重大影响时,做好解释说明预案。 (e)服务提供者应检查研发者提供的责任说明文件,确保责任链条可以 追溯到递归采用的人工智能模型。 (f)服务提供者应提高人工智能风险防范意识,建立健全实时风险监控 管理机制,持续跟踪运行中安全风险。 (g)服务提供者应评估人工智能产品与服务在面临故障、攻击等异常条0 码力 | 20 页 | 3.79 MB | 1 月前3 人工智能安全治理框架 1.0类监督和控制责任。 (d)服务提供者应让使用者了解人工智能产品的精确度,在人工智能决 策有重大影响时,做好解释说明预案。 (e)服务提供者应检查研发者提供的责任说明文件,确保责任链条可以 追溯到递归采用的人工智能模型。 (f)服务提供者应提高人工智能风险防范意识,建立健全实时风险监控 管理机制,持续跟踪运行中安全风险。 (g)服务提供者应评估人工智能产品与服务在面临故障、攻击等异常条0 码力 | 20 页 | 3.79 MB | 1 月前3
共 2 条
- 1













