`
镭风【CHN】
  • 浏览: 111241 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

C#中有没有Ruby中那种redo和retry的操作?

阅读更多
C#中有没有Ruby中那种redo和retry的循环控制操作?
有的话关键字是什么?
还是只能使用递归重新执行啊?
1
0
分享到:
评论
2 楼 镭风【CHN】 2009-10-23  
RednaxelaFX 写道
没有……不过有goto,所以如果你不介意用goto的话,
using System;

static class Demo {
    static void Main(string[] args) {
    retry:
        for (var i = 0; ; i++) {
        redo:
            Console.WriteLine(i);
            Console.Write("Continue? (y/n/rd/rt) >");
            var opt = Console.ReadLine().ToLower();
            if ("y" == opt) continue;
            else if ("n" == opt) break;
            else if ("rt" == opt) goto retry;
            else if ("rd" == opt) goto redo;
        }
    }
}

这样就行……


谢谢大兄弟指教!
1 楼 RednaxelaFX 2009-10-20  
没有……不过有goto,所以如果你不介意用goto的话,
using System;

static class Demo {
    static void Main(string[] args) {
    retry:
        for (var i = 0; ; i++) {
        redo:
            Console.WriteLine(i);
            Console.Write("Continue? (y/n/rd/rt) >");
            var opt = Console.ReadLine().ToLower();
            if ("y" == opt) continue;
            else if ("n" == opt) break;
            else if ("rt" == opt) goto retry;
            else if ("rd" == opt) goto redo;
        }
    }
}

这样就行……

相关推荐

    C#做的简单的Undo、Redo功能的实现

    在编程领域,撤销(Undo)和重做(Redo)功能是用户界面中常见的操作,它们允许用户取消或恢复最近的更改。在C#中,我们可以利用.NET框架提供的事件驱动和面向对象特性来实现这样的功能。这篇实验主要探讨了如何在...

    C# undo\redo框架

    在C#中,大多数编辑控件都有事件,如TextChanged、SelectionChanged等。通过监听这些事件,我们可以捕获用户操作并在适当的时候创建和执行命令对象。 4. **抽象命令接口**: 定义一个抽象的命令接口,包含Execute...

    c# datagridview 撤销/恢复 (undo/redo)

    它允许用户查看和操作表格形式的数据。撤销/恢复(Undo/Redo)功能是许多用户交互密集型应用的重要特性,它使用户可以撤消最近的操作,并在需要时恢复这些操作。在`DataGridView`中实现撤销/恢复功能对于提供良好的...

    C#实现的undo/redo的window窗体

    针对一个window窗体实现了undo/redo功能,包括textBox,checkBox, listBox, comboBox, radioButton以及按钮焦点变化的实现。可能有些小bug思路仅供参考。完整的工程文件,VS打开即可运行,欢迎评论~ 详细说明参见...

    c# undo/redo例子

    在C#编程中,撤销/重做(Undo/Redo)功能是许多应用程序的重要组成部分,尤其是在文本编辑器、绘图工具或任何允许用户进行可逆操作的软件中。撤销/重做机制允许用户取消最近的操作,并在需要时恢复它们,提高了用户...

    c# Undo Redo

    在C#编程中,"Undo"和"Redo"功能是常见的用户界面操作,它们允许用户撤销或恢复之前的操作,从而提高用户体验。在许多应用程序,尤其是涉及到文本编辑、图形设计或者数据编辑的软件中,这样的功能是必不可少的。在本...

    Simple Undo/redo library for C#/.NET

    在实现中,这可能是一个包含操作类型、操作前状态和操作后状态的对象。当用户执行一个操作时,该操作会被添加到操作历史中。 2. **操作历史(Operation History)**: 这是存储所有已执行操作的容器。通常,它会维护...

    C# treeView 控件 undo redo 撤销 重做 Demo vs2010 更新版

    在标题提到的"C# `treeView`控件 undo redo 撤销 重做 Demo vs2010 更新版"中,开发者面临的问题是在`TreeView`控件进行编辑时,需要提供撤销和重做功能,以便用户可以回退或恢复操作。由于直接对数据进行操作然后...

    43 直接强行把redo log写入磁盘?非也,揭秘redo log buffer.pdf

    在MySQL数据库中,InnoDB存储引擎使用Redo日志来记录事务性的操作,并通过日志缓冲区(Redo Log Buffer)来缓存Redo日志。下面将详细介绍Redo日志的结构、缓冲机制以及Redo日志缓冲区相关知识点。 首先,Redo日志...

    GIS软件中undo与redo的设计与实现

    GIS软件中的Undo与Redo功能是编辑操作的重要组成部分,它们允许用户撤销和恢复之前的编辑行为。本文深入分析了GIS软件中Undo与Redo操作的设计与实现,其主要内容包括Undo与Redo操作的原理、机制、流程以及实现方法。...

    Ruby编程语言中基础和高级控制结构详解

    本文详细介绍了Ruby编程语言中的基础和高级控制结构,包括条件语句(if、unless)、循环语句(while、until、for)、迭代器(each、map、select),以及模式匹配(case)、跳转控制(next、retry、break、redo)、...

    ruby中文教程(源代码)

    - 控制结构:包括条件语句(如`if`、`unless`)、循环(`for`、`while`、`until`、`each`)和流程控制(`break`、`next`、`redo`、`retry`)。 - 函数与方法:Ruby中的函数被称为方法,可以定义在类或模块中,支持...

    42 redo log是直接一条一条写入文件的吗?非也,揭秘redo log block.pdf

    MySQL数据库中的redo log(重做日志)是数据库高可用、事务...通过对redo log深入的分析和研究,开发者能够更好地解决实际工作中遇到的性能问题,对数据库进行有针对性的调优,从而提升数据库的运行效率和数据安全性。

    C# treeView 控件 undo redo 撤销 重做 Demo vs2010

    在开发过程中,我们可能会遇到需要为用户提供撤销(Undo)和重做(Redo)功能的情况,以便他们在误操作或需要恢复到之前状态时能轻松地进行操作。在VS2010中,虽然`TreeView`控件本身并不直接支持这些功能,但我们...

    Oracle_Undo与Redo的通俗

    什么是REDO? REDO记录transaction logs,分为online和archived。REDO的主要目的是为了恢复数据库到失败点,以便在发生故障时能够快速恢复数据库。例如,机器停电后,需要使用online redo logs来恢复系统到失败点;...

    Ruby语言中文教程.rar

    Ruby的流程控制还包含break、next、redo和retry关键字。 4. **面向对象编程**:Ruby是一种纯面向对象的语言,每个值都是对象,包括基本数据类型。类(Class)是创建对象的模板,对象通过方法(Method)进行交互。Ruby...

    NOLOGGING、APPEND、ARCHIVE和PARALLEL下,REDO、UNDO和执行速度的比较

    ### Oracle中NOLOGGING、APPEND、ARCHIVE和PARALLEL选项下REDO、UNDO及执行速度的比较 #### 1. 引言 在Oracle数据库管理中,了解不同操作模式下REDO与UNDO的生成量以及这些操作对执行速度的影响至关重要。这有助于...

    ruby初级中文教程与实例

    3. 控制结构:包括条件语句(if/else/elsif)、循环(while/until、for、each)、开关语句(case/when)以及break、next、redo和retry等控制流程关键字。 4. 函数和方法:Ruby中的函数定义使用`def`关键字,可以...

    ORACLE 修改redo日志文件 大小的方法

    本文将深入探讨如何在Oracle环境中修改redo日志文件的大小,以及这一操作的具体步骤和注意事项。 ### 一、理解redo日志文件 在开始修改redo日志文件大小之前,首先需要了解redo日志文件的基本概念。redo日志文件是...

    ruby学习的源码

    - 方法:Ruby中的方法可以定义在类、模块或对象上,支持块(block)和Proc对象。 - 控制结构:包括条件语句(如if、unless)、循环(如for、while、until、each)和流程控制(break、next、redo、retry)。 2. **...

Global site tag (gtag.js) - Google Analytics