.. _stdlib_array_boost: ==================================== 用于数组作的 Boost 包 ==================================== .. include:: detail/array_boost.rst array_boost 模块实现数组作例程的集合。 所有函数和符号都在 “array_boost” 模块中,使用 require 来访问它。 :: require daslib/array_boost ++++++++++++++++ 临时数组 ++++++++++++++++ * :ref:`temp_array (arr:auto implicit ==const -const) : auto ` * :ref:`temp_array (arr:auto const implicit ==const) : auto ` * :ref:`temp_array (data:auto? ==const -const;lenA:int const;a:auto(TT) const) : array\ ` * :ref:`temp_array (data:auto? const ==const;lenA:int const;a:auto(TT) const) : array\ const ` .. _function-_at_array_boost_c__c_temp_array_I_eq_.: .. das:function:: temp_array(arr: auto implicit ==const) temp_array returns auto .. warning:: 这是不安全的操作。 +--------+--------------+ +argument+argument type + +========+==============+ +arr +auto implicit!+ +--------+--------------+ 从给定对象创建临时数组。 重要要求是: * 对象内存是线性的 * 每个元素直接跟随下一个元素,步幅等于元素的大小 * 对象内存在返回数组的生命周期内不会更改 .. _function-_at_array_boost_c__c_temp_array_CI_eq_.: .. das:function:: temp_array(arr: auto const implicit ==const) temp_array returns auto .. warning:: 这是不安全的操作。 +--------+--------------------+ +argument+argument type + +========+====================+ +arr +auto const implicit!+ +--------+--------------------+ 从给定对象创建临时数组。 重要要求是: * 对象内存是线性的 * 每个元素直接跟随下一个元素,步幅等于元素的大小 * 对象内存在返回数组的生命周期内不会更改 .. _function-_at_array_boost_c__c_temp_array__eq_1_ls_._gr__qm__Ci_CY_ls_TT_gr_.: .. das:function:: temp_array(data: auto? ==const; lenA: int const; a: auto(TT) const) temp_array returns array .. warning:: 这是不安全的操作。 +--------+--------------+ +argument+argument type + +========+==============+ +data +auto?! + +--------+--------------+ +lenA +int const + +--------+--------------+ +a +auto(TT) const+ +--------+--------------+ 从给定对象创建临时数组。 重要要求是: * 对象内存是线性的 * 每个元素直接跟随下一个元素,步幅等于元素的大小 * 对象内存在返回数组的生命周期内不会更改 .. _function-_at_array_boost_c__c_temp_array_C_eq_1_ls_._gr__qm__Ci_CY_ls_TT_gr_.: .. das:function:: temp_array(data: auto? const ==const; lenA: int const; a: auto(TT) const) temp_array returns array const .. warning:: 这是不安全的操作。 +--------+--------------+ +argument+argument type + +========+==============+ +data +auto? const! + +--------+--------------+ +lenA +int const + +--------+--------------+ +a +auto(TT) const+ +--------+--------------+ 从给定对象创建临时数组。 重要要求是: * 对象内存是线性的 * 每个元素直接跟随下一个元素,步幅等于元素的大小 * 对象内存在返回数组的生命周期内不会更改 +++++++++++ 空支票 +++++++++++ * :ref:`empty (v:auto(VecT) const) : auto ` .. _function-_at_array_boost_c__c_empty_CY_ls_VecT_gr_._%_ls_IsAnyArrayMacro_c_expect_any_array(v_eq_true)_gr_: .. das:function:: empty(v: auto(VecT) const) empty returns auto +--------+----------------+ +argument+argument type + +========+================+ +v +auto(VecT) const+ +--------+----------------+ 如果 'v' 有 0 个元素,则返回 true。这也意味着定义了`length(v)`。 +++++++++++++ 未分类 +++++++++++++ .. _function-_at_array_boost_c__c_array_view_C_eq_1_ls_Y_ls_TT_gr_._gr_A_Ci_Ci_CN_ls_view_gr_0_ls_C_hh_1_ls_Y_ls_TT_gr_L_gr_A_gr_1_ls_v_gr__builtin_: .. das:function:: array_view(bytes: array const ==const; offset: int const; length: int const; blk: block<(view:array const#):void> const) array_view returns auto +--------+-----------------------------------------+ +argument+argument type + +========+=========================================+ +bytes +array const! + +--------+-----------------------------------------+ +offset +int const + +--------+-----------------------------------------+ +length +int const + +--------+-----------------------------------------+ +blk +block<(view:array const#):void> const+ +--------+-----------------------------------------+ 创建数组的视图,该视图是仅在块内有效的临时数组 .. _function-_at_array_boost_c__c_array_view__eq_1_ls_Y_ls_TT_gr_._gr_A_Ci_Ci_CN_ls_view_gr_0_ls__hh_1_ls_Y_ls_TT_gr_L_gr_A_gr_1_ls_v_gr__builtin_: .. das:function:: array_view(bytes: array ==const; offset: int const; length: int const; blk: block<(var view:array#):void> const) array_view returns auto +--------+-----------------------------------+ +argument+argument type + +========+===================================+ +bytes +array! + +--------+-----------------------------------+ +offset +int const + +--------+-----------------------------------+ +length +int const + +--------+-----------------------------------+ +blk +block<(view:array#):void> const+ +--------+-----------------------------------+ 创建数组的视图,该视图是仅在块内有效的临时数组