原文:http://www.cnblogs.com/caofangsheng/p/5113840.html
函数1、概念:是一个带有输入参数、输出参数、返回值的代码块。2、写法:修饰符 返回值类型 函数名(输入参数,输入参数){ 方法段 return 返回值;}3、注释:(1)输入参数格式:参数类型+变量名。可以不写(2)返回值类型---void为无返回值,函数体里面不能写return(3)“///”可以调出函数的注释,方便在引用时查看(4)需要与主函数在同一命名空间下4、例:publicint jiafa(int a,int b)
{return a+b;
}5、调用方法:在...
首先看下面的代码:?1234567891011121314151617using System; namespace Test{ publicclassBase { publicvoidPrint() { Console.WriteLine(Operate(8, 4)); } protectedvirtual intOperate(intx, inty) { returnx + y; } }}?12345678910namespace Test{ publicclassOnceChild : Base { protectedoverride intOperate(intx, inty) {...
“System.Threading.ThreadStateException:“在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式。请确保您的 Main 函数带有 STAThreadAttribute 标记。 只有将调试程序附加到该进程才会引发此异常”的异常Thread t = new Thread((ThreadStart)(() =>
{// 将出现这个异常的语句放到这里面
}
));
t.SetApartmentState(ApartmentState.STA);
t.Start();
t.Join();
原文:https://www.cnblogs.com/prodigal-son/p/1420614...
静态构造函数用于初始化任何静态数据,或用于执行仅需执行一次的特定操作。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数。静态构造函数具有以下特点:静态构造函数既没有访问修饰符,也没有参数。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数来初始化类。无法直接调用静态构造函数。在程序中,用户无法控制何时执行静态构造函数。静态构造函数的典型用途是:当类使用日志文件时,将使用这...
1.它的函数名与类名相同;2.它可以重载;3.不能指定返回类型,即使是void也不行;4.虽然在一般情况下,构造函数不被显式调用,而是在创建对象时自动被调用。但是并不是不能被显示调用。有些时候是一定要显示调用的,只要是父类有带参的构造函数,在子类中就必须显示的调用父类的构造函数,因为子类的构造器在实例化时无法找到父类的构造函数(当父类有自己写的无参构造函数时,子类也不用显示调用)。 public TestService() : base...
何为高阶函数 大家可能对这个名词并不熟悉,但是这个名词所表达的事物却是我们经常使用到的。只要我们的函数的参数能够接收函数,或者函数能够返回函数,当然动态生成的也包括在内。那么我们就将这类函数叫做高阶函数。但是今天我们的标题并不是高阶函数,而是标准高阶函数,既然加上了这个标准,就意味着在函数式编程中有一套标准的函数,便于我们每次调用。而今天我们将会介绍三个标准函数,分别为Map、Filter、Fold。 Map这...
6.5 函数的重载 函数重载允许创建多个同名函数。这些函数可使用不同的参数类型。(函数重载不能用函数返回值作为区分。如果只是返回值不同就能重载函数,那么调用函数时就无法知道调用哪个返回值函数(别忘了类型隐式转换),所以就没办法执行代码,所以不能用返回值来区分函数重载。) 例如,前面使用了下述代码,其中包含函数MaxValue():class Program { staticint MaxValue(int[] intArray) { int maxVal = intArray[0]...
/* 20160324 */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace Ch06
{
class Program
{
//params 参数数组
static int SumVals(params int[] vals)
{
int sum = 0;
foreach (int val in vals)
{
sum += val;
}
return sum;
} //值引用, 1.val is not an cons...
函数:能够独立完成某个功能的模块。好处:1.结构更清析(编写、维护方便 )。2.代码重用。3.分工开发。四要素:名称,输入(参数),输出(返回的类型),加工(函数体)语法:返回类型 函数名(参数类型 参数名,....){函数体} 函数调用:[数据类型 变量名 = ]函数(参数); 函数调用时:调用的参数和函数定义的参数保持一对待:个数,类型,对应。 形参:形式参数。——函数定义的参数。实参:实际参数。——函数调用的参数。 实参、...
/// <summary>/// 计算同比缩放的值/// </summary>/// <param name="oW">原宽</param>/// <param name="oH">原高</param>/// <param name="w">目标宽</param>/// <param name="h">目标高</param>/// <param name="mode">HW(指定高宽缩放(可能变形)),W(指定宽,高按比例),H(指定高,宽按比例),MaxHW(最大宽高比例缩放,比如原100*50->50*30,则结果是50*25)</param>/// <returns></returns>public static WidthHeight TBScale(dou...
///<summary>/// 递归查询
///</summary>///<param name="groupID"></param>///<param name="idList"></param>protectedstaticvoid FindChildrenID(int groupID, StringBuilder idList)
{// 这里是找孩子节点
var gLst = RepositoryFactory.Group.FindList(p => p.ParentID == groupID, "ID", false).ToList();
foreach (var item in gLst)
{//判断子节点是否存在,有则继续if (RepositoryFactory.Group.Find(p => p.ParentID == i...
C#里准确的说法应该叫委托,委托的方法有多种,下面介绍Action<T>,可以做为一个函数参数递。//引用using System; void Start () { TestMain (test); } void TestMain(Action<int> tt){ Debug.Log("testMain"); //如果工作完成 tt (0); } void test(int x){ Debug.Log("test"); } 封装的方法必须与此委托定义的方法签名相对应。 也就是说,封装的方法必须具有一个通过值传递给它的参数,并且不...
在LINQ中的标准查询运算符写LINQ的时候有两种语法:查询语法和方法语法,其中方法语法是命令形式的,它使用的是标准的方法调用。方法是一组叫做标准查询运算符的方法。标准查询运算符有一系列叫做API的方法组成,他能让我们查询任何.NET数据集合。有关标准查询运算符的重要特性如下:(1) 被查询的结合对象叫做序列,它必须实现IEnumerable<T>接口, T是类型;(2) 标准查询运算符使用方法语法(3) 一些运算符...
构造函数这个概念,在我们刚开始学习编程语言的时候,就被老师一遍一遍的教着。亲,现在你还记得静态构造函数的适用场景吗?如果没有,那么我们一起来复习一下吧。静态构造函数是在构造函数方法前面添加了static关键字之后形成的,并且没有修饰符(public,private),没有参数。静态构造函数有哪些特点呢:静态构造函数没有修饰符修饰(public,private),因为静态构造函数不是我们程序员调用的,是由.net 框架在合适的时机调用的。静态构...