流程控制

NSIS脚本学习:使用 LogicLib.nsh 实现基本流程控制结构

眉间皱痕 提交于 2019-12-20 18:03:16
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> LogicLib.nsh 程序的三种基本结构包括:顺序结构、分支结构、循环结构。顺序结构是最基本的结构,本文主要说明了如何在NSIS脚本中写出分支结构和循环结构。 最基本的分支结构和循环结构可以用StrCmp命令和Goto命令组成,但通过这种方式写出的代码可读性极差且难以调试。此时我们就需要用到头文件 LogicLib.nsh 中的功能了。 下面是一个示例程序,在“MyProgram”区域中输入我们要调试的代码: !define DEBUG_PATH "E:\NSIS_Test\TmpProgram" !define OUTPUT_PATH "E:\NSIS_Test\Output" !define INSTALL_PATH "E:\NSIS_Test\Output" !include LogicLib.nsh Name "NSIS_VariableConstants_Test" Caption "NSIS_VariableConstants_Test" InstallDir ${INSTALL_PATH} OutFile "Galatea.exe" Section "My Program" SetOutPath ${OUTPUT_PATH} File /r "${DEBUG_PATH}\*.*" ; ----

Swift讲解专题六——流程控制

泄露秘密 提交于 2019-12-02 00:45:26
Swift讲解专题六——流程控制 一、引言 一种编程语言的强大与否,很大程度上取决于其提供的程序流程控制方案,就如使用汇编语言实现复杂的程序流程是一件痛苦的事情。Swift中提供了许多强大的流程控制语句,例如快速遍历for-in,while循环,repeat-while循环,switch选择等,需要注意的是,在Swift2.2中,for(a;b;c)循环已经被弃用掉,并且Swift中的Switch语句也更加强大,可以处理任意数据类型。 二、for-in循环 配合范围运算符,for-in循环可以用来执行确定次数的循环,示例如下: for index in 1...5 { print(index) } //如果不需要获取循环中每次的循环次数 可以使用如下方式 var sum=0; for _ in 1...3 { sum += 1 } for-in循环也通常会用来遍历数组,字典,集合等,示例如下: var collection1:Array = [1,2,3,4] var collection2:Dictionary = [1:1,2:2,3:4,4:4] var collection3:Set = [1,2,3,4] for obj in collection1 { print(obj) } for (key , value) in collection2 { print(key

三个分享——异步流程控制 / Modern Node.js/Java项目如何与Node.js共存

这一生的挚爱 提交于 2019-12-01 15:08:08
分享1《深入浅出js(Node.js)异步流程控制》 StuQ分享专题《深入浅出js(Node.js)异步流程控制》 InfoQ 前端之巅分享 精简版 摘要 目前在js流程控制领域越来越乱,各种派系。。。比如promise,generator,async函数,各种混战,在百花齐放的今天,作为前端或Node.js沾边工程师或全栈工程师,你知道该学哪种么? 从下一代测试框架ava说起 流程控制发展的前世今生概览 从co引出的血案,到yieldable 5种,到aysnc函数,聊聊同步的流程控制 最后推导一下学习重点、未来趋势 流程控制 从下一代测试框架ava开始 co引出的血案 generator/yield co源码解析 convert or compose yieldable 5种 async/await 推导出学习重点 涵盖 callback vs hell Node.js的error-first和EventEmitter thunk promise/a+ generator/yield async/await 异常处理 各种xxx-fy 地址 源码 https://github.com/i5ting/asynchronous-flow-control 分享2《微服务选型之Modern Node.js》 DockOne微信分享专用(2016-07-12) 摘要 目前Node