C# Dynamic如何动态添加属性

C# Dynamic如何动态添加属性,第1张

1)定义一个委托,参数个数可变,参数都是object类型:这里的委托多有个dynamic参数,代表调用这个委托的动态对象本身.

2)定义一个委托转载对象,因为dynamic对象不能直接用匿名方法,这里用对象去承载:

3) 定义一个动态对象:

C语言的数组有动态数组和静态数组两种。

1 静态数组。

对于静态数组,无法新增加数组成员数量。

所以一定要最初始定义足够大的数组,然后可以用一个整型变量维护数组中现有成员个数,再动态增加实际成员个数。

比如

int a[1000]

int n = 0

while(scanf("%d",&a[n]) != EOF) n ++

这样的代码就可以实现增加数组成员数的类似效果。n为实际成员个数。

2 动态数组。

动态数组是可以随时改变数组成员个数的。不过为了确定当前数组个数,需要用两个整型变量来保存最大成员数,和已有成员数,这样就可以在不够的时候进行扩大。

int n = 0, size = 100 //n为当前元素个数,size为数组大小,初始为100.

int *a = NULL//数组指针。

a = (int *)malloc(sizeof(int) * size) // 初始分配100个元素。

while(scanf("%d",&a[n]) != EOF) 

{

    n++

    if(n >= size)//空间不足。

    {

            size+=100//增加100个元素空间。

            a = (int *)realloc(sizeof(int)*size, a)//重新分配空间。

    }

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11928625.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存