C#自定义类 A
public class a
{
public int A{get;set;}
public int A_1{get;set;}
}
定义一个a的数组
a[] xx=new a[10];
这个时候xx中的元素全是null;
请问怎样写类 a能实现像
string []xx=new string[10];
这样的定义好之后就是给了默认初始化值得呢?C#类
public class a
{
public int A{get;set;}
public int A_1{get;set;}
}
定义一个a的数组
a[] xx=new a[10];
这个时候xx中的元素全是null;
请问怎样写类 a能实现像
string []xx=new string[10];
这样的定义好之后就是给了默认初始化值得呢?C#类
解决方案 »
- 怎么使treeview的根节点的checkbox隐藏或者禁用,或者一直选中
- 为什么upload到ftp上的文件length比local大一些?
- 打包时时,安装prerequisites选从当前项目的相同位置下载时出错
- 请高手问答 .Net面试题
- 转换?
- 求一个能在C# 速成版 2005下用的插件,至少要有代码对齐功能的。
- 有谁用过Enterprise Library1.0 -- DataAccess Application Block 没
- C#数据读入的问题
- 调用应用程序问题
- 急急急!寻找ORACLE8.0.5的OLEDB驱动,在线等待
- 怎样在静态函数里调用非静态的字段??
- c# winform datagridview 问题
不进行初始化 它的元素自己就是进行初始化了的值是"" 因为可以直接xx[0]="aaa";来赋值但是自定义的那个a[]xx=new a[10];如果直接用xx[0].A=0;来赋值的话 就会报错;因为这是xx中的元素指向的是null 有什么办法让a也像string 那样呢?给个默认的数组初始化值
class Program
{
static void Main(string[] args)
{
string[] yy = new string[10];
a[] xx = new a[10];
xx[0] = new a();
}
} public class a
{
public int A { get; set; }
public int A_1 { get; set; }
}
不进行初始化 它的元素自己就是进行初始化了的值是"" 因为可以直接xx[0]="aaa";来赋值但是自定义的那个a[]xx=new a[10];如果直接用xx[0].A=0;来赋值的话 就会报错;因为这是xx中的元素指向的是null 有什么办法让a也像string 那样呢?给个默认的数组初始化值
string a=null;
a="adfsdf";
这样会怎么样呢,你测试一下
{
var result = new T[upperBound];
for (var i = 0; i < upperBound; i++)
result[i] = new T();
return result;
}
当年给string对象做引用的时候(也就是xx[0]="abc"),它就是个引用类型。
不要太纠结这个。
你只要知道,类型a就不是string那样的既是值类型也是引用类型,类型a本身只能是引用类型,如果不做引用或者初始化就会返回默认值null,所以在创建的时候必须一个一个初始化。
如果你不想一个一个来,那就用for循环初始化吧。