当前位置: 首页 > news >正文

济宁做网站比较好的公司有哪些重庆建设工程安全监督信息网官网

济宁做网站比较好的公司有哪些,重庆建设工程安全监督信息网官网,网络策划需要哪些技能,wordpress搭建镜像1.76.0稳定版 此版本较小 ABI兼容更新 函数指针文档中新增的ABI兼容部分介绍了函数签名与ABI兼容的意义.大部分是参数类型和返回类型的兼容,及在当前Rust中兼容的列表.文档仅描述现有兼容的状态. 一个新增功能是,现在保证符和u32是ABI兼容的.它们一直有相同大小和对齐方式,…1.76.0稳定版 此版本较小 ABI兼容更新 函数指针文档中新增的ABI兼容部分介绍了函数签名与ABI兼容的意义.大部分是参数类型和返回类型的兼容,及在当前Rust中兼容的列表.文档仅描述现有兼容的状态. 一个新增功能是,现在保证符和u32是ABI兼容的.它们一直有相同大小和对齐方式,但现在即使在调用函数的ABI中,与上面文档一致,它们也是等价的. 引用中的类型名 为了调试,从Rust1.38开始,就可用any::type_name::T()返回T类型的串描述,但这需要一个显式的类型参数. 指定该类型会有点难,尤其是对无法命名的类型(如闭包)或不透明的返回类型. 新的any::type_name_of_val(T)可从类型引用中取描述性名字. fn get_iter() - impl IteratorItem i32 {[1, 2, 3].into_iter() } fn main() {let iter get_iter();let iter_name std::any::type_name_of_val(iter);let sum: i32 iter.sum();println!(The sum of the {iter_name} is {sum}.); }当前打印: core::array::iter::IntoIteri32,3的和是6. 稳定的API Arc::unwrap_or_clone Rc::unwrap_or_clone Result::inspect Result::inspect_err Option::inspect type_name_of_val ptr::{from_ref, from_mut} ptr::addr_eqstd::hash::{DefaultHasher,RandomState}这些以前只能通过std::collections::hash_map取得. 1.77.0稳定版 此版本较小. C串字面 Rust现在支持在static CStr内存类型中,扩展到按nul字节终止的串的的C串字面(cabc).这样更易编写与需要nul结尾串的外部接口互操作的代码,并在编译时检查所有相关的错误(如,缺少内部nul字节). 支持异步fn中的递归 因为编译器限制,以前异步函数无法调用自身.在1.77中,已取消该限制,因此只要使用间接以避免无穷大小的函数状态,就允许递归调用. 即像此代码现在可以工作了: async fn fib(n: u32) - u32 {match n {0 | 1 1,_ Box::pin(fib(n-1)).await Box::pin(fib(n-2)).await} }offset_of! 对构字段,1.77.0稳定了可访问结构的相关公字段的字节偏移的offset_of!.当在没有类型的现成实例,但需要字段的偏移时,此宏最有用. 用户现在可用offset_of!(StructName, field)访问公字段的偏移,它从结构开头开始按字节用偏移扩展到usize式. 默认,在发布配置文件中允许去掉 未在输出中允许调试信息的cargo配置文件(如,debug0)默认允许stripdebuginfo. 主要是因为(预编译的)标准库附带了调试信息,即即使本地编译没有显式请求调试信息,但静态链接的结果包含了标准库的调试信息. 需要调试信息的用户可用相关Cargo配置文件中的调试标志显式允许它. Stabilized APIs array::each_ref array::each_mut core::net f32::round_ties_even f64::round_ties_even mem::offset_of! slice::first_chunk slice::first_chunk_mut slice::split_first_chunk slice::split_first_chunk_mut slice::last_chunk slice::last_chunk_mut slice::split_last_chunk slice::split_last_chunk_mut slice::chunk_by slice::chunk_by_mut Bound::map File::create_new Mutex::clear_poison RwLock::clear_poison1.78.0稳定版 诊断属性 Rust现在支持#[diagnostic]属性名字空间,来影响编译器错误消息.按不要求编译器用的提示对待这些,提供编译器无法识别的诊断也不是错误. 该灵活性使得即使并非所有,无论是不同版本还是完全不同实现的编译器,都支持它们,源码提供诊断. 此名字空间带有第一个支持的#[diagnostic::on_unimplemented]属性,需要该特征但尚未在类型上实现时,可在特征上放置它以自定义消息. 考虑稳定化拉请中给出的示例: #[diagnostic::on_unimplemented(message My Message for ImportantTrait{A} is not implemented for {Self},label My Label,note Note 1,note Note 2 )] trait ImportantTraitA {} fn use_my_trait(_: impl ImportantTraiti32) {} fn main() {use_my_trait(String::new()); }以前,编译器会给出如下内置错误: 错误[E0277]:不满足String:ImportantTraiti32的特征约束. –src/main.rs:12:18 | 12|use_my_trait(String::new()); |------------^^^^^^^^^^^^^未为串实现ImportantTraiti32特征 |此调用引入的约束的必需. 使用#[diagnostic::on_unimplemented],其自定义消息填充主错误行,在源输出上放置其自定义标签.仍按帮助输出写入原标签,且也会写入自定义注解. 这些确切细节可能会变化. 错误[E0277]:未为串实现ImportantTraiti32的消息 –src/main.rs:12:18 | 12|use_my_trait(String::new()); |------------^^^^^^^^^^^^^我的标签 |由此调用引入的约束必需 帮助:未为串实现ImportantTraiti32特征 注:注1 注:注2 对特征作者来说,如果可提供更好的提示,而不仅是谈论缺失的实现自身,则该诊断会更有用.如,这是标准库中的删节示例: #[diagnostic::on_unimplemented(message the size for values of type {Self} cannot be known at compilation time,label doesnt have a size known at compiletime )] pub trait Sized {}断定不安全的前提条件 Rust标准库有许多不安全函数的前提条件的断定,但历史上它们只在标准库的#[cfg(debug_assertions)]构建中允许,以避免影响发布性能. 然而,因为一般是在发布模式下编译和分发的标准库,因此大多数Rust开发者并不检查这些. 现在,延迟到生成代码,才执行这些断定的条件,因此根据用户自己的设置来检查调试断定,在调试和测试构建中默认允许. 尽管检查的量的细节一般不稳定,此更改可帮助用户在其代码中抓未定义行为. 如,slice::from_raw_parts要求一个对齐的非无效指针.以下故意的未对齐指针有未定义行为,虽然如果你运气不佳,在过去可能有效,但调试断定现在可以抓住它: fn main() {let slice: [u8] [1, 2, 3, 4, 5];let ptr slice.as_ptr();//从对齐总是与u16的正确方式相差1个的针创建一个偏移let i usize::from(ptr as usize 1 0);let slice16: [u16] unsafe { std::slice::from_raw_parts(ptr.add(i).cast::u16(), 2) };dbg!(slice16); }在library/core/src/panicking.rs:220:5处main线程出现紧急情况: 违反了不安全的前提条件:slice::from_raw_parts要求指针对齐且非无效,且切片的总大小不超过isize::MAX 注意:使用RUST_BACKTRACE1环境变量运行以显示追踪追踪 线程导致非展开崩溃.中止. 确定性重新对齐 标准库有一些可改变指针和切片的对齐方式的函数,但是如果严格遵守他们的文档,它们以前有一些注意,这样,实际上难以依赖它们. 这些警告主要是为了对冲常求值,但,它们只对非常使用是稳定的.现在,他们承诺根据其实际输入,有一致的运行时行为. pointer::align_offset计算,要按给定对齐更改指针需要的偏移.如果不行,它会返回usize::MAX,但以前允许总是返回usize::MAX,现在已删除该行为. slice::align_to和slice::align_to_mut都按对齐的中间切片和剩余的未对齐的头和尾切片转换切片. 这些方法现在承诺返回尽量大的中间部分,而不是允许实现返回次优的,如按头片返回所有内容. 稳定的API 对多个std::error::Error,接受相关实现的非static生命期 impl Read for Stdin MakeimplFd:AsFdimpltakeSized implFromTryReserveErrorforio::Error这些API现在在常环境中是稳定的: Barrier::new() 兼容说明 如前,Rust1.78已要求其最低提高到窗口10,以实现以下目标: x86_64-pc-windows-msvc i686-pc-windows-msvc x86_64-pc-windows-gnu i686-pc-windows-gnu x86_64-pc-windows-gnullvm i686-pc-windows-gnullvmRust1.78的LLVM已升级到18版本,完成了已声明的针对x86-32和x86-64目标的u128/i128ABI更改. 1.79.0稳定版 内联常式 常{...}块现在在式位置上是稳定的,允许无需额外的声明(如,在特征上定义常项或关联的常)的,显式进入常环境. 与常项(const ITEM:......)不同,内联常可使用域内的泛型,并推导其类型而不是显式写出来,这样,对内联代码片特别有用.如,像此模式: const EMPTY: OptionVecu8 None; let foo [EMPTY; 100]; //可写作: let foo [const { None }; 100];注意,这也适合泛型环境,以前要求带关联常的冗长特征声明: fn create_none_arrayT, const N: usize() - [OptionT; N] {[const { None::T }; N] }这样,代码更加简洁并易于阅读. 关联类型位置的约束 Rust1.79稳定了关联项的约束语法,这允许在其他约束内的关联类型位置中放置约束,即T:TraitAssoc:Bounds.... 这样就不需要显式泛型类型来约束关联类型. 此功能允许在一些以前不可能或要施加额外,不必要的限制的地方,指定约束: where子句,在此,相当于将约束分割为两个(或多个),where子句. 如,where T:TraitAssoc:Bound等价于where T:Trait,T as Trait::Assoc:Bound. 1,超级特征,与where子句不同,使用特征时,通过新语法隐式指定约束.示例语法: trait CopyIterator: IteratorItem: Copy {}2,关联类型项约束,允许约束与特征的关联类型关联的嵌套刚性投影.如, trait Trait { type Assoc: Trait2Assoc2: Copy; }3,不透明类型约束(RPIT,TAIT),允许无需命名不透明类型,约束与不透明类型关联的关联类型.如,impl IteratorItem:Copy定义一个项为复制的迭代器,不必实际将该项叫约束. 扩展自动临时生命期 现在在匹配和如构造中,自动扩展在构造中立即引用的临时的生命期.这与块结构中扩展临时对象的生命期一样. 如: let a if true {..;temp() //过去错误,但现在扩展了生命期 } else {..;temp() //过去错误,但现在扩展了生命期 }; //而 let a match () {_ {..;temp() //过去错误,但现在扩展了生命期} };现在与之前行为一致: let a {..;temp() //扩展生命期 };因为这些程序过去编译失败,此行为后向兼容. 在标准库构建中允许帧指针 标准库现在使用-Cforce-frame-pointersyes编译分发Rust项,使下游用户可更轻松地分析他们的程序.注意,尽管在Cargo的发布配置文件中默认去掉它,标准库还继续提供了行级调试信息(如,DWARF). 稳定的API {integer}::unchecked_add {integer}::unchecked_mul {integer}::unchecked_sub [T]::split_at_unchecked [T]::split_at_mut_unchecked [u8]::utf8_chunks str::Utf8Chunks str::Utf8Chunk *const T::is_aligned *mut T::is_aligned NonNull::is_aligned *const [T]::len *mut [T]::len *const [T]::is_empty *mut [T]::is_empty NonNull::[T]::is_empty CStr::count_bytes io::Error::downcast num::NonZeroT path::absolute proc_macro::Literal::byte_character proc_macro::Literal::c_string这些API现在在常环境中是稳定的: Atomic*::into_inner io::Cursor::new io::Cursor::get_ref io::Cursor::position io::empty io::repeat io::sink panic::Location::caller panic::Location::file panic::Location::line panic::Location::column
http://www.w-s-a.com/news/919944/

相关文章:

  • 备案网站可以做影视站网站400
  • 四川住房与城乡建设部网站注册登记
  • 网站建设第三方沈阳工程最新动态
  • 兰州做网站客户上海企业在线登记
  • 新乡公司做网站wordpress被大量注册
  • 小语种服务网站公众号平台建设网站
  • 免费做mc皮肤网站企业网站建设合同模板
  • 做网站可以申请个体户么网站的定位分析
  • jsp做的零食网站下载wordpress侧边栏折叠
  • 帝国网站单页做301南京旅游网站建设公司
  • 网站sem优化怎么做网站建设推广安徽
  • 比较好的室内设计网站潍坊网络科技
  • 南宁网站建设公设计联盟网站
  • 多个图表统计的网站怎么做百度推广费2800元每年都有吗
  • 连江县住房和城乡建设局网站企业类网站模版
  • 临沂seo整站优化厂家网站建设 大公司排名
  • 网站开发有哪些方式百度导航怎么下载
  • 网站认证免费视频直播网站建设方案
  • 瀑布流分享网站源代码下载网站构建的一般流程是什么
  • wordpress 4.9 多站wordpress邮箱解析
  • 微信网站开发企业汽车网站设计模板
  • 如何提升网站转化率遵义市公共资源交易平台
  • 网站目录管理模板企业解决方案部
  • 建设网站上申请劳务资质吗珠海哪个公司建设网站好
  • c2c商城网站建设在微信怎么开发公众号
  • 美的公司网站建设的目的做个网站要钱吗
  • 和县建设局网站孟州网站建设
  • 网站与规划设计思路竞价培训课程
  • 网站建设设计视频专业设计企业网站
  • 湖南省建设工程网站cerntos wordpress