1.方法的格式
成员访问修饰符 返回值 方法名称(参数列表)
{
//方法的内容
}
- 方法名称不可重复,大小写视为不同(同一个namespace中)
- 在小括号中编写参数列表
- 方法的内容包含在{}中
ps:关键字——static
1
2
3
4
5
6
7
8
9
10
11
12
|
#include<iostream.h>
static voidfn(); //声明静态函数
void main()
{
fn();
}
void fn() //定义静态函数
{
intn=10;
printf ( "%d" ,n);
}
|
- 静态函数不能被其它文件所用;
- 其它文件中可以定义相同名字的函数,不会发生冲突;
ps:成员访问修饰符
访问修饰符 | 说明 |
public | 公有访问。不受任何限制。 |
private | 私有访问。只限于本类成员访问,子类,实例都不能访问。 |
protected | 保护访问。只限于本类和子类访问,实例不能访问。 |
internal | 内部访问。只限于本项目内访问,其他不能访问。 |
protected internal | 内部保护访问。只限于本项目或是子类访问,其他不能访问 |
C#成员类型的可修饰及默认修饰符如下表:
成员类型 | 默认修饰符 | 可被修饰符 |
enum | public | none |
class | private | public、protected、internal、private、 protected internal |
interface | public | none |
struct | private | public、internal、private |
2.打印当前时间
using System;
class Method
{
static void Main()
{
Console.WriteLine("Now time is {0}",MyMethod);
}
public static DataTime MyMethod()
{
return DataTime.Now;//Now后面没有括号,表示是属性而不是方法
}
}
修改成1:
using System;
class Method
{
static void Main()
{
string TempName="";
while(TempName!="end")
{
TempName=Console.WriteLine();
MyMethod(TempName);
}
}
public static void MyMethod(string Name)
{
Console.WriteLine("The Name is "+Name+"\n");
}
}
带多个参数的方法:
class Method
{
static void Main()
{
int i = 5;
int k = 3;
Console.WriteLine("i+k="+add(i,k));
}
public static int add(int i,int k)
{
return i+k;
}
}
3.共享变量
非静态的成员变量不能使用 class.name来访问变量;
可以使用实例.name来访问。
class Method
{
class A
{
public static int i = 0;//静态变量,实现全局函数的功能
public void addi()
{
i += 1;
}
}
static void Main()
{
A a = new A();
a.addi();
A b = new A();
b.addi();
Console.WriteLine(A.i);
}
}
class Method
{
class A
{
public int i = 0;//非静态变量
public void addi()
{
i += 1;
}
}
static void Main()
{
A a = new A();
a.addi();
A b = new A();
b.addi();
Console.WriteLine(b.i);
}
}