- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 自定义一个线程安全的Dictionary
最近在看ilruntime源码的时候看到写的很好的一个案例,先记录下来,方便以后使用.using System;using System.Collections;using System.Collections.Generic;using System.Collections.ObjectModel;using System.Diagnostics;using System.Runti...
2019-09-23 22:26:12
457
原创 ref 和 out
在c#中,默认的参数传递是对值的拷贝,在方法中对参数的修改是不会影响到参数变量的原始值的.先看代码: class Program { private static int age = 50; static void Main(string[] args) { add(age); Consol...
2019-09-14 15:08:30
140
原创 使用可空类型,避免GC的产生.
先看代码吧: class Program { private static Man _man = new Man(); private static Man man2 = new Man();//这个new Man()会成为一个GC static void Main(string[] args) ...
2019-09-14 14:47:56
201
原创 有趣的private现象,或者说是要正确理解什么是私有数据?私有在哪里?
看代码:class Man { private int age; public Man Clone() { Man man = new Man(); man.age = this.age; //看这里 return man; } }我们知...
2019-09-14 14:31:04
384
原创 理解值类型和引用类型
都知道c#的基本类型除了string之外都是值类型,但是为什么呢?因为字符串的大小不确定,更加高效的做法是在运行时动态分配内存,而不是在编译时静态分配.举个例子:int i= 42; //声明并初始化iint copyi = i; //copyi 包含i中的数据的拷贝,i和copyi都包含值42i++; //i递增不影响copyi,i现在的值是43,copyi...
2019-09-14 14:11:31
266
原创 尽量使用unity引擎的Random随机数
.net平台自带的一个Random类是非常基础的,需要实例化才能使用,不可避免的产生GC,在unity engine里面也封装了一个,全部都是静态的方法,不需要new直接使用,而且针对unity环境添加了很多的数值类型的随机数。避免与.net 的Random冲突,可以这样引入:using Random = UnityEngine.Random;下面是两者的对比:...
2019-01-06 00:53:09
4698
原创 C#自定义一个简单的栈结构
怎么理解栈结构?举一个简单的例子,你往一个盒子你放东西,先放的东西肯定是在上面,你要取的话只能从上面一件一件的拿出来,然后才可以拿到最底部的东西。namespace ConsoleTest{ public class Stack { Entry top; public void Push(object data) { ...
2019-01-05 14:11:33
486
1
UI - Builder1.2
2018-12-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人