自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6030)
  • 收藏
  • 关注

原创 openJiuwen 零代码搭建旅游规划师智能体:通过工作流一键导入导出,自动化生成专属行程

摘要 本文探讨了AI智能体在旅游规划领域的应用价值,重点分析了openJiuwen平台通过JSON导入导出功能实现的工作流快速迁移与复用方案。以"旅游规划智能助手"为例,展示了天气检查工作流如何通过导出/导入机制实现: 开发效率提升:基于现有模板二次开发,相比从零搭建节省70%时间; 跨环境一致性:JSON文件确保开发、测试、生产环境配置完全一致; 团队协作优化:通过配置共享实现知识沉淀,避免重复开发; 运维风险降低:支持版本回滚和隔离测试,保障业务连续性。 实践表明,该机制使旅游规划智

2026-03-04 14:16:21 29630

原创 “年会/联欢会活动规划助手”一键式openJiuwen提示词自优化:从人工编写到智能体落地的“零调试“革命

摘要:本文介绍了如何在openJiuwen平台上构建一个"年会/联欢会活动规划助手"智能体。通过提示词自优化功能,从基础提示词配置到反馈优化、快捷优化等环节,实现AI智能体从静态规则到动态适配的转变。系统可自动识别用户场景需求,生成包含流程设计、创意策划、资源协调等模块的专业活动方案,并提供预算管理、风险管控等实用功能。该方案能帮助用户快速生成可执行的策划方案,解决活动筹备中的常见痛点。

2026-03-04 13:42:51 38025

原创 华为云 DevUI Vue项目集成实战:如何打通axios,并且在表格中显示结果

Axios 是一个基于 Promise 的 HTTP 客户端库,支持浏览器和 Node.js 环境。它提供统一 API 发送 GET/POST/PUT/DELETE 请求,具有跨平台兼容性、Promise 支持、拦截器功能、高级配置和统一错误处理等特性。安装方式为 npm install axios。示例展示了基本请求发送、表单数据提交和列表数据渲染,配合 Node.js 后端实现数据交互。Axios 因其简洁 API 和强大功能,广泛应用于前后端开发中。

2025-12-11 00:51:15 689

原创 华为云 DevUI Vue项目集成实战:三步集成表单组件

本文介绍了使用DevUI组件库实现表单功能的方法。首先通过模板创建包含学生信息收集字段的表单,包括输入框、下拉选择、单选/复选框等多种表单元素。然后详细说明了两种表单校验方式:行内校验规则和rules规则数组,并展示了如何通过ref获取表单DOM结构进行最终校验。最后演示了表单数据收集过程,可通过接口上传数据。文章提供了完整的代码示例和效果截图,帮助开发者快速实现后台管理系统中常见的表单功能。

2025-12-11 00:24:18 742

原创 华为云 DevUI Vue项目集成实战:如何快速搭建现有后台管理系统

本文介绍了如何在Vue 3.0项目中集成华为云DevUI框架。首先通过Vite CLI创建Vue+TS项目,遇到Node版本不兼容问题后升级到20.19版本解决。接着安装vue-devui、图标库和主题包,在main.ts中引入相关插件和样式文件并初始化主题。最后在App.vue中简单使用d-button组件进行测试。整个过程涵盖了从项目创建到组件使用的完整流程,帮助开发者快速上手Vue DevUI框架。

2025-12-10 23:16:47 650

原创 React Native跨平台鸿蒙开发高级应用原理:RNOH框架中的 ‌RNApp‌ 模块的配置代码

RNApp是React Native在鸿蒙平台的封装模块,简化应用启动流程。它自动管理RNInstance和RNSurface的创建,支持单实例应用开发,提供即开即用体验。核心功能包括:配置RN实例参数、定义JS Bundle加载方式、传递初始化属性、构建自定义组件等。该模块封装了底层复杂操作,支持多种Bundle加载策略(Metro/文件/资源),适用于大多数标准RN应用场景,显著降低开发复杂度。

2025-11-27 20:01:01 1013

原创 React Native跨平台鸿蒙开发高级应用原理:UIAbility是包含UI界面的应用组件的相关API

UIAbility是HarmonyOS中提供UI界面的应用组件,支持生命周期管理和组件协同功能。RNAbility作为其子类,专门封装了启动React Native应用的核心逻辑,包括生命周期处理、窗口设置和页面路径配置等关键功能。开发者通过继承RNAbility并实现getPagePath()方法指定入口页面,即可快速构建RN应用。该组件提供了丰富的回调方法,如onCreate()进行初始化、onWindowStageCreate()设置UI加载、onDestroy()释放资源等,同时支持自定义窗口属性和

2025-11-27 17:58:55 648

原创 React Native跨平台鸿蒙开发高级应用原理:使用Codegen工具创建Turbo Native Module和Fabric Native Component

摘要: RNOH提供了鸿蒙化的Codegen工具,用于生成Turbo Native Module和Fabric Native Component的胶水代码。该功能从react-native-harmony 0.72.13版本开始支持。使用流程包括:声明JS接口、配置codegenConfig(需嵌套在harmony字段下)、执行codegen命令、实现原生代码和JS调用。Codegen可生成C++和ArkTS文件,支持两种版本配置:version1用于TurboModule/ArkTS组件,version2

2025-11-27 16:54:07 898

原创 React Native跨平台鸿蒙开发高级应用原理:使用Metro进行Bundle转字节码

本文介绍了React Native在鸿蒙平台的代码分包机制。系统采用基础包+业务包的分包方案:基础包包含React Native核心框架和通用组件,业务包则按功能模块划分。文章详细说明了两种包的打包命令配置方法,并提供了将bundle转换为高效字节码的操作指南。此外还介绍了使用Metro服务进行实时更新的方法,通过端口转发实现真机调试。这种分包机制能有效优化应用性能,实现模块化加载和代码复用。

2025-11-27 16:32:40 276

原创 React Native跨平台鸿蒙开发高级应用原理:React Native鸿蒙拆包方案中Basic和HomePage模块的配置实现方案

本文介绍了React Native鸿蒙拆包方案中Basic和HomePage模块的配置实现。基础包(Basic模块)包含React Native框架和通用组件,配置createModuleIdFactoryWrap方法生成固定模块ID并存储映射关系。业务包(HomePage模块)通过processModuleFilter过滤掉基础包已有的模块,实现按需加载。拆包方案通过固定ID策略、映射文件存储和分步打包命令(先基础包后业务包),实现启动性能优化、资源按需使用、独立更新和内存效率提升。该方案显著减小首屏加载

2025-11-27 16:18:46 248

原创 React Native跨平台鸿蒙开发高级应用原理:通过配置 ‌Metro 打包器‌ 来实现 React Native 应用的‌代码拆分(拆包)

本文介绍了React Native项目中Metro打包工具的安装与配置方法。在安装方面,可通过npm或yarn单独安装最新版Metro。配置Metro主要有三种方式,重点讲解了metro.config.js的配置结构,特别强调了拆包打包中关键的serializer选项。通过示例工程详细说明了如何利用createModuleIdFactory和processModuleFilter两个核心方法实现模块ID管理和过滤:createModuleIdFactoryWrap方法用于区分基础包和业务包并生成模块ID映射

2025-11-27 16:03:45 469

原创 React Native跨平台鸿蒙开发高级应用原理:生成bundle 文件,多Bundle打包

本文探讨了React Native多Bundle打包方案在HarmonyOS NEXT应用中的实现。通过Metro工具将应用拆分为基础包和业务包,解决单个Bundle过大导致的加载性能问题。文章详细介绍了多Bundle应用的资源加载机制,包括Bundle路径配置和RN实例创建过程,并提出了当前存在的资源路径设置未生效问题。同时分析了多Bundle应用的预加载必要性,给出了ArkTS环境下基于LoadManager封装的多Bundle加载实现方案,涉及RN实例创建、Bundle执行状态监控等关键环节。最后指出

2025-11-27 15:38:32 810

原创 React Native跨平台鸿蒙开发高级应用原理:生成bundle 文件,单Bundle打包

React Native OpenHarmony打包与集成方案 本文介绍了React Native在OpenHarmony平台的打包与集成方案。通过react-native bundle-harmony命令生成bundle文件,默认输出到rawfile目录。随着应用规模扩大,单bundle打包会带来启动速度慢、内存占用高和更新流量大等问题。文章对比了三种加载方式:本地资源加载适用于生产环境,Metro服务用于开发调试,沙箱目录加载适合动态更新场景。同时详细说明了在原生工程中集成RNOH的CMake配置方法,

2025-11-27 15:30:38 862

原创 React Native跨平台鸿蒙开发高级应用原理:如何实现打包流程OpenHarmony化

本文介绍了将React Native项目打包流程适配到OpenHarmony平台的关键技术方案。主要内容包括:采用分层架构设计,通过Metro打包器配置、依赖包管理和构建模式优化实现平台适配;重点优化了渲染引擎性能(使用XComponent对接ArkUI)和字节码生成(Hermes编译器);详细说明了OpenHarmony打包的配置项和命令参数,如dev模式、入口文件、输出路径等设置。该方案实现了React Native应用在OpenHarmony平台的高效运行,为跨平台开发提供了新的技术路径。

2025-11-27 14:55:01 827

原创 React Native跨平台鸿蒙开发高级应用原理:RN-JS打包方案介绍

在 React Native 中,应用的 JavaScript 代码和资源需要在设备上运行。为了提高应用的加载速度和性能,以及减少网络请求,React Native 应用通常会在发布前进行打包处理,将所有的代码和资源打包成一个或多个文件。​ 本章节主要介绍 React Native OpenHarmony 化后,如何在 ReactJs 工程中打包 bundle 文件。OpenHarmony 打包 Bundle 的过程涉及和,请参考文档,初步构建基本 ReactJs OpenHarmony 化环境。

2025-11-27 14:46:12 839

原创 React Native跨平台鸿蒙开发高级应用原理:了解 RN 原生渲染

这里多提一点的是,小程序的组件分为原生组件和非原生组件,对于原生组件而言,这就脱离的 Web 渲染方案的范畴,属于原生渲染方案的一部分,所以从这点上看,小程序也可以算得上是 Web 渲染和原生渲染的融合解决方案。原生渲染方案的基本思路是在 UI 层采用前端框架,然后通过 JavaScript 引擎解析 JS 代码,JS 代码通过 Bridge 层调用原生组件和能力,不同于一般 react 应用,它需要借助原生的能力来进行渲染,组件最终都会被渲染为原生组件,这可以给用户带来比较好的体验。

2025-11-26 22:44:43 774

原创 React Native跨平台鸿蒙开发高级应用原理:RHOH启动流程与Worker线程启动原理介绍

鸿蒙RN启动流程分为四个阶段:1)RN容器创建,包括EntryAbility、Index.ets、RNApp.ets和RNSurface.ets组件构建;2)Worker线程启动,运行TurboModule;3)NAPI方法初始化,配置18个ArkTS调用C++的接口;4)RN实例创建,涉及ID获取、TurboModule注册、字体注入等步骤。最后完成bundle加载和界面渲染,整个流程通过ArkTS与C++的交互实现RN框架的初始化与运行。

2025-11-26 10:20:16 344

原创 React Native跨平台鸿蒙开发高级应用原理:适配层事件分发逻辑(二)

本文介绍了ArkUI框架中事件分发机制。对于Touch事件,通过TouchEventHandler处理,根据事件类型(DOWN/MOVE/UP/CANCEL)分发给对应的ComponentInstance,最终通过事件发射器传递给JS侧。非Touch事件(如Click)由ArkUINode处理,通过代理模式传递到ViewComponentInstance,再通过事件发射器触发JS回调。文章详细阐述了两种事件的分发路径和条件判断逻辑,确保Touch和Click事件不会冲突,并最终实现页面刷新。

2025-11-26 10:18:07 392

原创 React Native跨平台鸿蒙开发高级应用原理:适配层事件分发逻辑(一)

本文描述了适配层事件分发逻辑的实现过程。主要包括:1) 事件注册机制,如Stack节点注册点击/悬停事件,SurfaceTouchHandler注册触摸事件;2) 事件接收通过ArkUINodeRegistry回调;3) 事件处理流程,区分Touch事件和非Touch事件,分别查找对应的处理器;4) Touch事件通过TouchTarget定位并传递给JS侧;5) 非Touch事件(如点击)由ArkUINode处理。系统通过事件类型判断和参数验证确保事件正确分发,最终触发页面更新操作。

2025-11-26 10:17:08 293

原创 React Native跨平台鸿蒙开发高级应用原理:CAPI组件如何进行向上对接RN指令

摘要: 在嵌入式或RTOS系统中,CAPI组件通过定义接口实现与上游RN指令的交互。具体流程包括:1)RN适配层处理指令,2)MountingManagerCAPI解析指令类型(Create/Delete/Insert/Remove/Update),3)根据指令操作组件实例(如创建ImageComponentInstance或更新布局属性)。示例中,SensorComponent通过消息队列将数据传递至DataProcessorComponent,若指令为RN_COMMAND则特殊处理。该机制依赖清晰的接口

2025-11-26 10:15:00 560

原创 React Native跨平台鸿蒙开发高级应用原理:OpenHarmony使用ContentSlot占位组件管理Native API创建的组件

在开发涉及原生模块(Native API)与前端框架(如React, Vue等)集成的Web应用时,经常需要使用到ContentSlot或Placeholder组件来管理原生组件的占位。此外XComponent的libraryname参数不支持跨module使用,即无法找到其它模块中的同名so,RNOH的日志会提示找不到对应的so。因此,RNOH将使用ContentSlot作为占位组件。的介绍,先前在RNOH中使用的用于Native UI节点的占位容器XComponent的NODE类型不再演进,推荐使用。

2025-11-26 10:09:44 362

原创 React Native跨平台鸿蒙开发高级应用原理:React Native 中用于 JavaScript 和原生代码进行交互的模块TurboModule

本文探讨了React Native中Turbo Modules在原生模块开发中的应用,重点比较了ArkTSTurboModule和cxxTurboModule两种类型。Turbo Modules通过JSI实现高效通信,支持类型安全和异步调用,适用于图像处理、设备交互等高性能场景。文章详细介绍了实现流程,包括接口定义、代码生成、原生逻辑实现和模块集成,并通过图像处理案例展示了C++核心模块设计。相比传统Native Modules,Turbo Modules具有更好的性能和类型安全性,是React Nativ

2025-11-26 10:06:27 951

原创 React Native跨平台鸿蒙开发高级应用原理:React Native 的组件渲染系统Fabric原理介绍

React Native正在向新架构Fabric迁移,计划2024年底正式启用。新架构通过简化渲染流程和优化C-API性能(如直接数据使用、属性Diff等)提升效率。鸿蒙团队提供了react-native-harmony适配包支持OpenHarmony平台。代码示例展示了新旧架构的类型定义差异:旧架构使用requireNativeComponent需要额外类型声明,而新架构的codegenNativeComponent可直接导出类型化组件。同时介绍了React Fabric库的功能特性,包括画布操作、插件系

2025-11-26 09:35:16 691

原创 React Native跨平台鸿蒙开发高级应用原理:RNOH架构整体架构设计原理

React Native for OpenHarmony(RNOH)架构解析 RNOH是基于React Native新架构(0.68+)的鸿蒙适配版本,采用分层设计: 通信架构 通过JSI实现JavaScript与CPP高效通信 采用C-API直接调用鸿蒙原生能力 TurboModule支持异步原生调用 线程模型 三线程设计:主线程(UI)、JS线程、后台线程 主线程负责ArkUI组件管理和事件处理 JS线程执行React代码和布局计算 开发支持 要求Node.js≥16和DevEco Studio≥4.0

2025-11-26 09:27:01 737

原创 React Native跨平台鸿蒙开发高级应用原理:React Native为什么可以无缝跨平台

React Native是一个基于React的开源框架,用于构建跨平台原生移动应用。它允许开发者使用JavaScript和React组件模型开发iOS和Android应用,同时保持接近原生应用的性能和体验。核心特点包括:代码复用(一次编写多平台运行)、热更新支持、原生UI组件映射以及灵活的可扩展性。React Native提供基础核心组件(如View、Text等),并支持自定义原生组件开发。其优势在于结合了React的声明式编程与原生平台能力,既提升开发效率又确保应用性能。

2025-11-26 09:16:51 662

原创 Qt-for-鸿蒙PC HarmonyOS 跑马灯标签组件开发实战

本文介绍了基于Qt/QML框架开发的HarmonyOS跑马灯标签组件,该组件通过Timer实现平滑的文本滚动动画,支持自定义文本、颜色、字体及滚动速度等属性。关键技术包括:使用TextMetrics计算文本宽度,Timer控制动画帧率,clip属性裁剪显示区域,以及响应式布局管理。组件具有高度可定制性,性能优化良好,能够自动适应容器尺寸变化,为HarmonyOS应用提供流畅的文本展示方案。

2025-11-18 22:01:37 20089

原创 Qt-for-鸿蒙PC HarmonyOS ListWidget 组件开源鸿蒙开发实践

Qt for HarmonyOS ListWidget 组件开发总结 本项目展示了Qt Quick在HarmonyOS平台开发列表组件的实践。通过实现ListView/GridView切换、增删编辑等核心功能,重点解决了三个关键问题: 入口函数差异:必须使用qtmain()而非main(),因HarmonyOS将Qt应用作为共享库加载 图形渲染配置:需预先设置OpenGL ES 3.0格式,包括RGBA 32位色、24位深度缓冲等参数 组件交互优化:为ListView和GridView实现: 触摸友好设计(

2025-11-18 22:00:19 5450

原创 Qt-for-鸿蒙PC HarmonyOS 备忘录应用开发实战

摘要:Qt for HarmonyOS备忘录应用开发 该项目基于Qt/QML框架开发了一个跨平台的备忘录应用,适配HarmonyOS系统。采用MVC架构设计,前端使用QML实现Material Design风格的UI界面,后端通过C++处理业务逻辑。核心功能包括备忘录的增删改查操作,使用JSON文件存储数据实现持久化。项目实现了页面导航、数据绑定、错误处理等完整功能,并针对HarmonyOS平台进行了OpenGL ES适配。通过Qt的跨平台特性,该应用可在多种设备上运行,具有代码结构清晰、性能高效的特点。开

2025-11-18 21:58:50 20172

原创 仓颉pinyin4cj中文转拼音技巧详解,如何快速实现拼音转换?

在汉字学习、文本处理和自然语言处理领域,汉字转拼音是一项非常实用的技术,特别是在语言处理、信息检索和语言学习中,极大地提升了工作效率。特别是当开发涉及中文文本处理的应用时,如拼音排序、拼音检索或语言处理系统。在开发互联网应用程序时,处理中文字符的拼音转换对于语音识别、搜索优化和用户界面友好性至关重要。例如,在搜索引擎中实现拼音搜索、生成拼音缩写、或者对中文内容进行拼音排序等。在我们实际的开发过程中,经常会遇到需要将中文字符串转换为拼音的需求。

2025-11-12 17:11:00 20239

原创 React Native跨平台鸿蒙开发高级应用原理:RN 方案如何实现图表显示

React Native的跨端实现分为初始化流程和更新流程。初始化时,Native层加载JS引擎并运行代码,JS线程通过Shadow线程计算布局并通知Native线程渲染原生组件。更新流程中,用户交互触发Native到JS的事件传递,JS处理后再通知Shadow线程计算布局并更新UI。RN的优势在于复用React生态,但存在JS与Native异步通信的性能瓶颈,如快速滚动时可能出现卡顿。本质上,跨端分为逻辑跨端(通过JS引擎)和渲染跨端(通过桥接层通信),核心是开发层声明UI需求,由底层实现平台相关渲染。相

2025-11-09 16:07:06 522

原创 Rust从0到1实战系列篇 Rust 错误处理kind 方法,如何可恢复的错误的传递

本文介绍了Rust语言中的错误处理机制。Rust将错误分为可恢复错误(Result<T,E>)和不可恢复错误(panic!),不同于其他语言的异常处理方式。对于不可恢复错误,panic!宏会终止程序运行并提供回溯信息;可恢复错误则使用Result枚举类型处理,通过match、unwrap/expect方法或?操作符进行错误传递和捕获。文章还展示了如何通过kind()方法细分错误类型进行针对性处理,体现了Rust独特而严谨的错误处理哲学。

2025-11-09 16:03:06 625

原创 Rust从0到1实战系列篇 Rust引用标准库、use 关键字、Rust访问权限、Rust 组织管理

本文介绍了Rust语言中代码组织管理的三个核心概念:箱(Crate)、包(Package)和模块(Module)。箱是二进制或库文件的基本单位,包通过Cargo.toml文件管理工程,模块则用于结构化组织代码。重点讲解了模块的访问控制机制(pub/private关键字)、路径引用方式(绝对/相对路径)、use关键字的导入功能以及标准库的使用方法。通过示例说明了如何在多文件项目中组织模块结构,确保代码的清晰性和可维护性。这些概念共同构成了Rust强大的模块化编程体系。

2025-11-09 15:59:39 935

原创 Rust从0到1实战系列篇 Rust 枚举类、Option 枚举类、Option 是一种特殊的枚举类

摘要:Rust的枚举(enum)功能强大,支持附加属性和模式匹配。枚举可以像其他语言一样简单定义(如Book::Papery),也可以附加元组或结构体属性。Rust使用match语句处理枚举分支,替代传统的switch并避免其问题。Option枚举类替代了null值,强制处理空值情况。if let语法是match的简化形式,适用于仅需两种分支的情况。这些特性使Rust的类型系统更加安全可靠。

2025-11-09 15:56:15 531

原创 仓颉实战系列 - composition 操作符,表示两个单参函数的组合

多赋值表达式是一种特殊的赋值表达式,多赋值表达式等号左边必须是一个 tuple,这个 tuple 里面的元素必须都是左值,等号右边的表达式也必须是 tuple 类型,右边 tuple 每个元素的类型必须是对应位置左值类型的子类型。重载后的操作符的返回类型需要与左操作数的类型一致或是其子类型,即对于 a op= b 中的 a,b,op,它们需要能通过 a = a op b 的类型检查。)的表达式,仅当操作符的右操作数的值会影响整个表达式的值时,才计算右操作数的值,否则只计算左操作数的值。

2025-11-08 18:38:06 665

原创 仓颉实战系列 - type test 和 type cast 表达式

,以及 5 种二元中缀位运算操作符:左移(<<)、右移(>>)、按位与(&)、按位异或(^)和按位或(|)。这里 e2 是函数类型的表达式,e1 的类型是 e2 的参数类型的子类型;对于移位操作符,要求其操作数必须是整数类型(但两个操作数的类型可以不一样),并且无论左移还是右移,右操作数都不允许为负数(对于编译时可检查出的此类错误,编译报错,如果运行时发生此错误,则抛出异常)。区间操作符有两种:…当 e 的运行时类型 R 是 T 的子类型时,e is T 的值为 true,否则值为 false。

2025-11-08 18:31:09 1053

原创 仓颉实战系列 - 问号操作符,必须和上文介绍的后缀操作符

当 a,c 和e 的值分别等于 None 时,a?为一元后缀操作符,它必须和上文介绍的后缀操作符 .,(),{} 或 [] 一起使用(出现在后缀操作符之前),实现 Option 类型对这些后缀操作符的支持,例如:a?如果 optional chaining 中每个 Option 类型的表达式的值都等于某个 Some 值,则整个表达式的值为 Some(v)(v 的类型是最后一个表达式的类型)。[b])可变时,如果 a 的值等于 Option.Some(v),将 c 的值赋值给 v.b(或 v[b]);

2025-11-08 18:20:24 767

原创 仓颉实战系列 - trr 表达式 trr 表达式

需要注意的是,当 break 出现在嵌套的循环表达式中时,只能终止直接包围它的循环表达式,外层的循环并不会受影响。throw 表达式用于抛出异常,在调用包含 throw 表达式的代码块时,如果 throw 表达式被执行到,就会抛出相应的异常,并由事先定义好的异常处理逻辑进行捕获和处理,从而改变程序的执行流程。数值类型转换表达式用于实现数值类型间的转换,它的值是类型转换后的值,它的类型是转换到的目标类型(但原表达式的类型不受目标类型影响),详细的转换规则可参见类型转换。控制转移表达式会改变程序的执行顺序。

2025-11-08 18:11:23 556

原创 仓颉实战系列 - Tuple 模式 Tuple 模式

for-in、while 和 do-while 这三种循环表达式的表达能力是等价的,通常,在知道循环的次数或遍历一个序列中的所有元素时使用 for-in 表达式;在不知道循环的次数,但知道循环终止条件时使用 while 或do-while 表达式。三种循环表达式的类型均为 Unit。由于 break、continue 表达式必须有包围着它们的循环体,所以对于三种循环表达式,其循环条件中出现的 break 或 continue 均会绑定到其最近的外层循环;如外层不存在循环,则报错。例如do {

2025-11-08 17:54:28 899

原创 仓颉实战系列 - 变量名和函数名

if-let 表达式首先对 <- 之后的表达式进行求值(表达式的类型为可以是任意类型),如果表达式的值能匹配 let 之后的 pattern,则执行它之后的块,否则,执行 else 之后的 if 表达式或块(如果存在)。if 表达式首先对 if 之后的表达式进行求值(要求表达式的类型为 Bool),如果表达式的值等于 true,则执行它之后的块,否则,执行 else 之后的 if 表达式或块(如果存在)。对于变量名,它的值等于变量求值后的值,它的类型为变量的类型;()} else {()} 的语法糖。

2025-11-08 00:31:38 822

原创 仓颉实战系列 - 变量 变量的定义

;变量的定义均包括四个部分:修饰符、let/var/const 关键字、patternsMaybeIrrefutable 和变量类型。其中:修饰符top-level 变量的修饰符包括:public, protected, private, internal• 局部变量不能用修饰符修饰。

2025-11-08 00:23:40 590

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除