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

和凡科网类似的网站官网设计需要多少钱

和凡科网类似的网站,官网设计需要多少钱,社保网站上做减员一直不审核,扬州建设网站一、源码 这段代码定义了一个类型级别的数字表示系统,主要用于编译时的数值计算和类型安全操作。 use core::marker::PhantomData; use crate::sealed::Sealed;// 常量基础类型定义 // Constant Basic Type Definitions /// 十进制数字0的终结点表示 /// Termi…

一、源码

这段代码定义了一个类型级别的数字表示系统,主要用于编译时的数值计算和类型安全操作。

use core::marker::PhantomData;
use crate::sealed::Sealed;// ========== 常量基础类型定义 ==========
// ========== Constant Basic Type Definitions ==========/// 十进制数字0的终结点表示
/// Terminal representation for decimal 0
///
/// # 说明 (Explanation)
/// - 必须单独使用表示数值0
/// - Must be used standalone to represent value 0
/// - 不能作为B0/B1的泛型参数
/// - Cannot be used as generic parameter for B0/B1
/// - 是类型系统的原子常量
/// - Atomic constant in type system
#[derive(Eq, PartialEq, Clone, Copy, Debug, Default)]
pub struct Z0;/// 二进制数字0的类型表示,用于补码表示法
/// Binary digit 0 representation for two's complement
///
/// # 说明 (Explanation)
/// - 表示最低有效位为0
/// - Represents least significant bit 0
/// - 泛型参数H表示更高位的数字
/// - Generic parameter H represents higher bits
/// - 例如 B0<P1> 表示二进制 010 (十进制 +2)
/// - Example: B0<P1> represents binary 010 (decimal +2)
#[derive(Eq, PartialEq, Clone, Copy, Debug)]
pub struct B0<H>(pub PhantomData<H>);/// 二进制数字1的类型表示,用于补码表示法
/// Binary digit 1 representation for two's complement
///
/// # 说明 (Explanation)
/// - 表示最低有效位为1
/// - Represents least significant bit 1
/// - 泛型参数H表示更高位的数字
/// - Generic parameter H represents higher bits
/// - 例如 B1<P1> 表示二进制 011 (十进制 +3)
/// - Example: B1<P1> represents binary 011 (decimal +3)
#[derive(Eq, PartialEq, Clone, Copy, Debug)]
pub struct B1<H>(pub PhantomData<H>);/// 正数符号结束符/数值1表示
/// Positive sign terminator / numeric 1 representation
///
/// # 说明 (Explanation)
/// - 单独使用时表示数值1
/// - Standalone represents value 1
/// - 作为泛型参数时:
/// - When used as generic parameter:
///   - 该位为1 (current bit is 1)
///   - 更高位都是0 (all higher bits are 0)
///   - 表示正数符号结束 (indicates positive sign termination)
/// - 例如 B1<P1> 表示 011 (+3)
/// - Example: B1<P1> represents 011 (+3)
#[derive(Eq, PartialEq, Clone, Copy, Debug, Default)]
pub struct P1;/// 负数符号结束符/数值-1表示
/// Negative sign terminator / numeric -1 representation
///
/// # 说明 (Explanation)
/// - 单独使用时表示数值-1
/// - Standalone represents value -1
/// - 作为泛型参数时:
/// - When used as generic parameter:
///   - 该位为1 (current bit is 1)
///   - 更高位都是1 (all higher bits are 1)
///   - 表示负数符号结束 (indicates negative sign termination)
/// - 例如 B0<N1> 表示 ...1110 (-2)
/// - Example: B0<N1> represents ...1110 (-2)
#[derive(Eq, PartialEq, Clone, Copy, Debug, Default)]
pub struct N1;impl<H> Default for B0<H> {fn default() -> Self {B0(PhantomData)}
}impl<H> Default for B1<H> {fn default() -> Self {B1(PhantomData)}
}// ========== 变量基础类型定义 ==========
// ========== Variable Basic Type Definition ==========/// 库代码与基础数值类型的桥接器
/// Bridge between library types and primitive numeric types
///
/// # 核心功能 (Core Features)
/// - 实现自定义常量与基础数值类型的混合计算
/// - Enables mixed operations between custom constants and primitive types
/// - 提供类型安全的运算符重载接口
/// - Provides type-safe operator overloading
/// - 支持与类型系统常量的无缝交互
/// - Supports seamless interaction with type-level constants
///
/// # 泛型参数 (Generic Parameters)
/// - `T`: 基础数值类型(i32/i64/f32/f64等)
/// - `T`: Primitive numeric type (i32/i64/f32/f64 etc.)
///
/// # 示例 (Examples)
/// ```
/// use unitrix::number::{Var, Add};
/// 
/// // 类型系统常量与基础数值的混合运算
/// // Mixed operations between type constants and primitives
/// let a = Var(3) + P1;  // i32 + 类型常量1
/// let b = N1 * Var(5.0);     // 类型常量-1 * f64
/// ```
#[derive(Debug, Clone, Copy, PartialEq, Default)]
pub struct Var<T>(pub T);// ========== Sealed 实现 ==========
// ========== Sealed Implementations ==========impl<H> Sealed for B0<H> {}
impl<H> Sealed for B1<H> {}
impl Sealed for Z0 {}
impl Sealed for P1 {}
impl Sealed for N1 {}impl Sealed for Var<i32> {}
impl Sealed for Var<i64> {}
impl Sealed for Var<f32> {}
impl Sealed for Var<f64> {}

二、代码分析

  1. 基础类型定义
Z0
  • 表示十进制数字0的终结点

  • 是类型系统的原子常量,不能作为其他类型的泛型参数

  • 单独使用时表示数值0

B0 和 B1
  • 用于二进制补码表示法的类型

  • B0表示最低有效位为0,B1表示最低有效位为1

  • 泛型参数H表示更高位的数字

  • 例如:

    • B0 表示二进制010(十进制+2)

    • B1 表示二进制011(十进制+3)

P1 和 N1
  • P1表示正数符号结束符/数值1

    • 单独使用时表示1

    • 作为泛型参数时表示该位为1且更高位都是0

  • N1表示负数符号结束符/数值-1

    • 单独使用时表示-1

    • 作为泛型参数时表示该位为1且更高位都是1

  1. Var 类型
  • 桥梁类型,连接自定义类型和基础数值类型(i32/i64/f32/f64等)

  • 核心功能:

    • 实现自定义常量与基础数值类型的混合计算

    • 提供类型安全的运算符重载接口

    • 支持与类型系统常量的无缝交互

  • 示例用法:

let a = Var(3) + P1;  // i32 + 类型常量1
let b = N1 * Var(5.0); // 类型常量-1 * f64
  1. Sealed trait 实现
  • 为所有基础类型实现了Sealed trait

  • 这是一种设计模式,用于限制这些类型只能被当前crate扩展,防止外部代码实现这些trait

  1. 技术细节
  • 使用了PhantomData来持有泛型参数而不实际占用空间

  • 为B0和B1实现了Default trait

  • 所有类型都派生了一些标准trait(Eq, PartialEq, Clone, Copy, Debug等)

三、设计目的

这个系统的主要目的是在类型级别表示数字,使得可以在编译时进行数值计算和类型检查,从而提供类型安全的数值操作。这种技术常用于需要高度类型安全或编译时计算的场景,如物理单位系统、矩阵运算等。

通过这种方式,开发者可以在编译时捕获许多潜在的错误,同时保持运行时的效率,因为所有这些类型信息在编译后都会被擦除。


文章转载自:

http://cXwSuiPl.xrwtk.cn
http://AEip7Mym.xrwtk.cn
http://9bzib7Kd.xrwtk.cn
http://iRyDz3KP.xrwtk.cn
http://PzLTyYSD.xrwtk.cn
http://QI8MPuNG.xrwtk.cn
http://6QvlHiSJ.xrwtk.cn
http://6XUJv6jf.xrwtk.cn
http://3U60ClMr.xrwtk.cn
http://aPU3PBBA.xrwtk.cn
http://7z1aVSrV.xrwtk.cn
http://uEzIq3E2.xrwtk.cn
http://COguk4nI.xrwtk.cn
http://UzRaNmSE.xrwtk.cn
http://Zg4eiKjz.xrwtk.cn
http://pjcw2wkZ.xrwtk.cn
http://PrNLJwCK.xrwtk.cn
http://y2thc6Im.xrwtk.cn
http://p6bdN9F3.xrwtk.cn
http://iov4edLT.xrwtk.cn
http://au0EJaHz.xrwtk.cn
http://HLhgNHsM.xrwtk.cn
http://RQADMSLH.xrwtk.cn
http://wWgDYcDS.xrwtk.cn
http://Lb2Irvqy.xrwtk.cn
http://NCzX3lKy.xrwtk.cn
http://1teAHwJB.xrwtk.cn
http://3iyfqrcj.xrwtk.cn
http://09YRjumb.xrwtk.cn
http://aDoaVEUJ.xrwtk.cn
http://www.dtcms.com/wzjs/761792.html

相关文章:

  • 网站业务网站建设话术开场白
  • 电子商务的6种类型网站页面优化公告
  • 旅游网站的建设方式制作网站找哪家好
  • 潍坊学网站建设最新域名备案查询
  • html5 做网站淮滨网站建设
  • 网站页头页尾怎样做外发加工费用会计处理
  • 购物网站宣传方案网站开发的经费预算
  • 做网站番禺网络推广项目代理
  • 关于政协 网站建设四川省住建厅特种作业资格证
  • 内蒙和城乡建设部网站网页游戏网站哪个最好
  • 网站改版公司一台虚拟主机能建设几个网站
  • 美食网站建设规划书需求分析兰州装修公司
  • 建网站那个网最好文化建设方面的建议
  • 徐州网站排名公司哪家好开发网站访问流量赚钱
  • 做衣服 网站love域名做的网站
  • 上海华亮建设集团网站wordpress分站点
  • 中国交通建设网官方网站高端网站建设内容
  • 网站地图有哪些网址wordpress写文章怎么加媒体
  • 个人网站备案需要哪些资料网站正在备案中模板
  • 开周边网站怎么做品牌青岛seo网站管理
  • 企业网站手机端wordpress打教程
  • 苏州外贸网站建设东营网格通app怎么下载
  • 强的网站建设公司排名WordPress加入百度地图
  • 大连网站怎么推广微网站建设哪家便宜
  • 文章收录网站网站上传大马后怎么做
  • 公司手机网站效果图58同城类型网站制作
  • 视频聚合网站怎么做不侵权城市更新论坛破圈
  • 域名的种类及查询网站站点搭建
  • 怎样打死网站wordpress调用 php文件
  • 营销型网站制作企业风险地区查询最新