C#可选参数的相关使用
static string GetStr(string s = "a", int i = 10, string r = "rrrr")
{
return s + i + r;
}
GetStr();
GetStr("abcde");
GetStr("abcde", 100);
GetStr("abcde", 100, "hjklmn");
并且,参数的顺序是不能改变的,不能跳过一个参数使用后面的参数类型,所以这样就会有个问题,如果我想调用这个方法只想用第一个和第三个参数,怎么办呢。
其实在可选参数的调用上,微软推出了命名参数,即
GetStr(s: "abcde", r: "hijklmn");只需要将参数名称标记下来就可以了。(命名参数只能是原方法的参数名 后跟冒号“:”)
这样以后的重载就可以省很多事了。省去了大段的代码重载方法
相关推荐
-
C#可选参数的相关使用
复制代码 代码如下: static string GetStr(string s = "a", int i = 10, string r = "rrrr") { return s + i + r; } 调用时,可以用如下几种方法调用 复制代码 代码如下: GetStr(); GetStr("abcde"); GetStr("abcde"
-
PHP函数按引用传递参数及函数可选参数用法示例
本文实例讲述了PHP函数按引用传递参数及函数可选参数用法.分享给大家供大家参考,具体如下: 一.函数按引用传递参数 1. 代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999
-
Python如何定义有可选参数的元类
问题 你想定义一个元类,允许类定义时提供可选参数,这样可以控制或配置类型的创建过程. 解决方案 在定义类的时候,Python允许我们使用 ``metaclass``关键字参数来指定特定的元类. 例如使用抽象基类: from abc import ABCMeta, abstractmethod class IStream(metaclass=ABCMeta): @abstractmethod def read(self, maxsize=None): pass @abstractmethod de
-
教你利用Golang可选参数实现可选模式
目录 从需求开始 定义构造函数 定义可选函数 增强构造函数 可选模式的优势 直观清晰 支持扩展 参数顺序 本文讨论Golang函数可选参数及函数类型,以及如何利用可选函数类型实现可选模式.同时通过构造函数作为示例,实现强大带可选参数的构造函数,让代码更直观.灵活.支持扩展. 从需求开始 可选参数给函数传递额外参数扩展或修改其行为,下面示例利用可选功能创建House类型: h := NewHouse( WithConcrete(), WithoutFireplace(), ) NewHouse是构
-
jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
Form Plugin API 里提供了很多有用的方法可以让你轻松的处理表单里的数据和表单的提交过程. 测试环境:部署到Tomcat中的web项目. 本文演示的是:jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象 ajaxForm()和ajaxSubmit()的可选参数项对象 ajaxForm 和 ajaxSubmit 都支持大量的可选参数,它们通过可选参数项对象传入.可选参数项对象只是一个简单的 JavaScript对象,里边包含了一些属性和一些值:
-
深入C# 4.0 新特性dynamic、可选参数、命名参数的详细介绍
1.dynamic ExpandoObject熟悉js的朋友都知道js可以这么写 : 复制代码 代码如下: var t = new Object(); t.Abc = 'something'; t.Value = 243; 现在这个js动态语言的特性,我们也可以在c#中使用了,前提是将一个变量声明为ExpandoObject类型.如下例: 复制代码 代码如下: static void Main(string[] args) { dynamic t = new ExpandoObject(); t
-
SpringMVC 参数绑定相关知识总结
请求进入DispatcherServlet的doDispatch后,获取HandlerMethod.然后根据HandlerMethod来确认HandlerApapter,确认后执行HandlerAdapter的handle方法.这里确认HandlerApater为RequestMappingHandlerAdapter,在执行handlerMethod之前,需要处理参数的绑定. 1. 简单参数绑定 执行HandlerAdapter的handler方法后,进入RequestMappingHandl
-
C#中命名参数和可选参数
一.简介 设计方法的参数是,可以将部分参数和全部参数分配默认值,然后调用这些方法的时候可以选择不提供部分实参,使用参数定义的默认值,另外,还可以在调用方法的时候通过指定参数名称来传递实参. 二.代码案例 class Program { private static int s = 0; private static int s_n = 0; private static void Mothed(int x = 9, string s = "A", DateTime dt = defau
-
JavaScript调用传递变量参数的相关问题及解决办法
举例 有一个js方法,接收参数: 复制代码 代码如下: function f1(myValue){ alert(myValue); } 有一个变量: 复制代码 代码如下: var passValue="Hello World"; 在调用这个方法的时候(我是出现在Ajax提交的时候): @Ajax.ActionLink("文本","控制器",new{参数},new AjaxOptions(){ HttpMethod="post"
-
c# 可选参数、命名参数
重新指定分配默认值的参数时,可以显式地为指定参数名称赋值,隐式指定的时候,是根据方法参数的顺序,靠c#编译器的推断. 代码示例: 复制代码 代码如下: void M(int x=9,string s="a",DateTime dt = default(DateTime)) {...} Main() { M();//使用默认值 M(8,"b")://隐式指定方法参数,没有指定的使用默认值 M(6,"v",DateTime.Now);//同上 M(6
随机推荐
- Ruby中使用Block、Proc、lambda实现闭包
- GO语言实现简单TCP服务的方法
- 口语要素150句
- Oracle 存储过程总结 二、字符串处理相关函数
- JS TextArea字符串长度限制代码集合
- 在线演示常用javascript特效
- 用Python实现通过哈希算法检测图片重复的教程
- Bash Shell中Shift用法分享
- jQuery实现Flash效果上下翻动的中英文导航菜单代码
- Linux恢复删除文件的lsof命令详解
- 详解React Native顶|底部导航使用小技巧
- 合理的配置防火墙
- 深入理解C/C++混合编程
- PHP 彩色文字实现代码
- vue使用$emit时,父组件无法监听到子组件的事件实例
- Python用csv写入文件_消除空余行的方法
- Vue项目使用localStorage+Vuex保存用户登录信息
- 33个Python爬虫项目实战(推荐)
- 更优雅的微信小程序骨架屏实现详解
- Android实现手机震动抖动效果的方法