当前位置: 首页 > news >正文

c#难点整理2

1.对象池的使用

就是先定义一系列的对象,用一个,调一个。

 public class ObjectPool<T> where T : new(){private Queue<T> pool; // 用于存储对象的队列private int maxSize;   // 对象池的最大容量// 构造函数public ObjectPool(int maxSize){this.maxSize = maxSize;pool = new Queue<T>(maxSize);InitializePool();}// 初始化对象池private void InitializePool(){for (int i = 0; i < maxSize; i++){pool.Enqueue(new T()); // 创建对象并加入池中}}// 从池中获取对象public T GetObject(){if (pool.Count > 0){return pool.Dequeue(); // 如果池中有对象,直接返回}else{Console.WriteLine("Pool is empty, creating new object.");return default(T);//用完了返回null//return new T(); // 如果池为空,创建新对象}}// 将对象归还到池中public void ReturnObject(T obj){if (pool.Count < maxSize){pool.Enqueue(obj); // 如果池未满,归还对象}else{Console.WriteLine("Pool is full, discarding object.");}}}

2.virtual的使用

父类方法有virtual,子类方法才可家override,但是子类方法其实不加override也可调用

3.CopyTo方法


http://www.mrgr.cn/news/95408.html

相关文章:

  • AI-Talk开发板之更换串口引脚
  • 汇川EASY系列之以太网通讯(MODBUS_TCP做主站)
  • 3.21-1自动化框架
  • 网络爬虫【爬虫库request】
  • Cesium 自定义路径导航材质
  • 【算法】DFS、BFS、floodfill、记忆化搜索、BFS拓扑排序
  • qt实现一个简单http服务器和客户端
  • Maven 简介及其核心概念
  • Java 大视界 -- Java 大数据在智能医疗远程会诊与专家协作中的技术支持(146)
  • 【多线程】线程安全集合类,ConcurrentHashMap实现原理
  • STM32 - 在机器人领域,LL库相比HAL优势明显
  • 区块链交易
  • MFC中CString类型是如何怎么转std::string的
  • 1.8 函数的连续性和间断点
  • 基于 FPGA的HLS技术与应用
  • 可发1区的超级创新思路:基于注意力机制的DSD-CNN时间序列预测模型(功率预测、交通流量预测、故障检测)
  • VLAN综合实验报告
  • Mybatis—01
  • C 语 言 --- 操 作 符 2
  • 第十五次CCF-CSP认证(含C++源码)