1楼:草薙在
可以放,只不过本地变量会把成员给隐藏,你访问i是本地变量,要访问t.i才可以。
没有看到你的静态main方法访问非静态成员,你访问的不过是你本地变量的实例成员而已
2楼:匿名用户
上面int i=0;是在类中定义的,下面int x=0;是定义在方法中的!
c#中的ref用法
3楼:雄哥
可以理解为类似的传址引用,同时还有out。
在函数需要外部传入一个变量名,然后在程序内部可以将这个值进行修改,典型的传址引用!在定义时必要加ref或out说明!
public void methoda(out string s )
调用时,应该先声明一个字符变量。
string temp;
methoda(out temp);
此时可以打印temp的值会变作"1";
而ref与out基本是类同的,如果在程序中引用原值的话,必须使用ref防止传入未初始化的值。
public void methodb(ref int s)
因为该函数要使用形参的原值,所以这里必须使用ref声明,不要使用out声明。
使用时,
int temp = 8;
methodb(ref temp);
打印temp的值会变为64。
ref因为对原值进行了引用,所以ref要求传入的一定是一个初始化后的值,不能是未初始化的值。
int temp;
methodb(ref temp);
//原则上这样是会错的,但这里我使用了一个int,由于在声明时int temp与int temp =0 是等价的,所以不会出错,但如果是字符串,使用这种方式完全是可以报错的!因为string temp与string temp ="";是不等价的,你也可理解为必须赋值后才可以使用。
public void methodc(ref string s)
string temp;
methodc(ref temp);//这种就是错误的方式。ref要求必须形参已经赋值(初始化)。
string temp = "";
methodc(ref temp);//这种方式就是正确的。
我们定义成员方法时,如果有引用原值使用必须使用ref,防上对方传入一个未初始化的值,引发程序错误,而没有必要对形参的值有要求时,则尽量使用out,防止调用时增加客户端**量。
希望能解决您的问题。
4楼:超大蒲公英
void fun(ref int a)
int i=2;
fun(ref i);
//i=3
关于cpu和内存超频的菜鸟问题,怎样 提高cpu的利用率,和减少内存,我是个菜鸟最好说详细点
1楼 匿名用户 整体速度影响不大 曾经有人测试过 同样的配置搭配不同速度的内存 667和800 几乎没有什么影响 再加上本身intel的内存控制器本身就比amd的差劲 所以无所谓 性能差距可以忽视 另外我可以给你个建议 在现在的基础上 你可以尝试把外频加到300 那样的话内存会到450 相当于900...
关于美甲和开美甲店的问题我是初学者,这样水平能
1楼 匿名用户 慢慢尝试。总会学到裏面的玄机。很多东西都是在实践中收获。 我不会美甲 但是想开家美甲店需要怎么做 2楼 匿名用户 别开,现在市场饱和了!倒闭的很多,首页你员工都找不到,因为美甲师都自己开小店,自己好好算算美甲材料 房租贵 人工费贵,还有多少利润,有些东西不是看表面好像那么攒钱,要自己...
请教下关于简易贷的安全怎么样,请问简易贷怎么样,是否安全,可靠 呢?这是我比较关心的问题
1楼 简易贷 我认为是安全的,广州车贷领域名副其实的霸主 请问简易贷怎么样,是否安全,可靠 呢 这是我比较关心的问题 2楼 匿名用户 没听过这个,现在的小贷平台太多了,大部分都是高利贷而已 3楼 钻诚投资担保 需要谨慎 申请贷款业务的条件 1 年龄在18 65周岁的自然人 2 借款人的实际年龄加贷款...