ICode9

精准搜索请尝试: 精确搜索
  • C#enum枚举解析(含IL解析)2022-08-14 12:00:19

    enum枚举用于存储命名的和神奇的内容。一般在collection、if和switch中使用enum枚举。 Enum枚举: 思考一下,一个项目存储有代表性的花,花可能会有紫色的颜色,一个枚举可以代表各种颜色---这比string类型更加强大。 Enum枚举用法: 在C#程序中,我们必须以类似于类的方式来指定一个枚举。然

  • c#进制转换2022-08-14 10:32:33

    全文剪切于C#帮助文档,整理出来方便自己后期查阅。 标准数字格式字符串 本文内容已由人工翻译。如果您连接了 Internet,请选择“联机查看本主题”以在可编辑模式下对照英文内容查看此页。 向 Microsoft 发送有关本主题的反馈。 在默认浏览器中联机查看本主题

  • PerfView专题 (第三篇):如何寻找 C# 中的 VirtualAlloc 内存泄漏2022-08-14 10:30:39

    一:背景 上一篇我们聊到了如何用 PerfView 去侦察 NTHeap 的内存泄漏,这种内存泄漏往往是用 C 的 malloc 或者 C++ 的 new 分配而不释放所造成的,这一篇我们来聊一下由 VirtualAlloc 方法造成的泄漏如何去甄别? 了解 VirtualAlloc 的朋友肯定说, C# 这种高层语言怎么可能会用 VirtualAl

  • C#-IO读写2022-08-14 00:31:41

    文件夹/文件 的创建和删除 // 创建一个文件夹 Directory.CreateDirectory(@"E:\Test"); // 删除指定文件夹(当前文件夹必须为空) Directory.Delete(@"E:\Test"); // 删除指定文件夹(即使要删除的文件夹不为空,也会删除) Directory.Delete(@"E:\Test", true); // 获取文件夹下的文件 Dir

  • C#并发编程-4 同步2022-08-13 19:31:04

    如果程序用到了并发技术,那就要特别留意这种情况:一段代码需要修改数据,同时其他代码需要访问同一个数据。 这种情况就需要考虑同步地访问数据。 如果下面三个条件都满足,就必须用同步来保护共享的数据。 多段代码正在并发运行; 这几段代码在访问(读或写)同一个数据; 至少有一段代码

  • C#-字符串2022-08-13 16:31:34

    字符串-引用类型 可以理解为一个存储字符的数组 关于字符串的常用方法 static void Main(string[] args) { string str = "Hello World"; // 字符串长度 Console.WriteLine(str.Length); // 批量访问每一个字符 for (int i = 0; i < str.Length; i++) {

  • 功能“空传播运算符”在 C# 5 中不可用。请使用语言版本 6 或更高版本。2022-08-13 15:01:53

        PM> Install-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform 使用新的 .NET 编译器平台(“Roslyn”)编译器作为服务 API 的替代 CodeDOM 提供程序。这为使用 CodeDOM 的系统中的新语言特性(例如 ASP.NET 运行时编译)提供了支持,并提高了这些系统的编译性能。

  • 从Git上新拉下来的C#工程,其引用库全部被标记为黄色感叹号解决方法2022-08-13 09:30:25

    解决操作如下: ①工具——NuGet包管理器——管理解决方案的NuGet程序包。   ②对缺少的NuGet程序包进行还原。     ③还原完成(解决方案资源管理器中点击刷新),工程恢复正常,标准库的dll都已正确找到。  

  • C# 控制台主线程、WPF应用主线程2022-08-13 01:30:47

    控制台应用,程序的主线程是工作线程。 所以如果在控制台应用中,弹出窗口,需要额外创建STA线程,如下所示: 另外,通过调试我们看到,控制台主线程跑完后,其实就销毁掉了。   如果是WPF应用程序,主线程是UI线程,从App的初始化位置可以看到,Main函数标记了STA线程的特性标签。如下图:  

  • C#-委托2022-08-12 21:02:05

    利用委托实现玩家扣血,UI刷新功能 玩家血量逻辑 /*玩家的数据,通过向外部暴露一个委托,从而减少代码之间的耦合度*/ using UnityEngine; // 声明一个血量变动的委托 public delegate void HpChange(float curHp, float maxHp); public class Player : MonoBehaviour { // 将声

  • C#获取当前程序所在路径的各种方法2022-08-12 16:32:03

    一、获取完整包含执行程序的路径:exe文件所在的目录+.exe文件名 1、方法1:Type.Assembly.Location //获取当前进程的完整路径,包含文件名(进程名)。 string str = this.GetType().Assembly.Location; 结果:X:\xxx\xxx\xxx.exe(.exe文件所在的目录+.exe文件名) 2、方法2:System.Diagnost

  • C# new string(char *)2022-08-12 16:03:13

    有些时候string 会快速变换显示,而我们不希望出现大量的string对象影响GC 所以我使用unsafe的char* 去更新显示 ` m_chars = m_str.ToCharArray(); fixed (char* p = m_chars) { //p[m_chars.Length] = '\0'; UpdateText(p);

  • C#中自定义特性验证实体类数据2022-08-11 23:00:48

    一、抽象基类BaseAttribute /// <summary> /// BaseAttribute 的摘要说明 /// </summary> public abstract class BaseAttribute : Attribute { public abstract string Validate(object value); } 二、自定义特性类 定义两个特性,RangeAttribute和M

  • 作为一名高中生,为什么我的编程技术提升渐慢,对此我的反省与计划2022-08-11 21:00:43

    不得不说,从我接触到编程(小学六年级,还是Free Pascal)开始,我一直在尝试学习新的编程知识,之后多多少少有所长进,可是参与他人在技术中的讨论,却发现好像自己什么也不会。我自己也做过一些项目,但是这些项目似乎具有的价值并不大,也没有起到提升技术的作用,可谓是花费了无用功做出来一堆糟粕

  • C#下一个简单的Actor模型实现2022-08-11 20:01:10

    网上关于Actor的内容有很多,这里提供一种简单的实现。直接上码: 1 public abstract class Actor<T> 2 { 3 public static readonly int StateWaiting = 0; 4 public static readonly int StateExecuting = 1; 5 public static readonly int StateExit

  • C#中using的使用的几种场景2022-08-11 19:01:29

    using在C#中随处可见,比如引入命名空间,这是也是每个C#的cs页面必须存在的,除了 引入命名空间还有几种用法,下面将介绍这几种的使用。 1、用于引入命名空间 这是最常见最基本的用法, 这样可以在程序中直接用命令空间中的类型,而不必指定类型的详细命名空间,类似于Java的import,这个功能也

  • Chapter 07 - Binding Key(C#实现)2022-08-11 13:01:40

    通过xcode把控件的操作绑定到类属性上。以下是布局和绑定。 KvcFunDelegate类(实现了绑定+添加observer)   看看效果:  

  • C# 中 DateTime 的各种使用(增加一年、一月、一个季度等等用法)2022-08-10 18:31:57

    获得当前系统时间: DateTime dt = DateTime.Now; Environment.TickCount可以得到“系统启动到现在”的毫秒值 DateTime now = DateTime.Now; Console.WriteLine(now.ToString("yyyy-MM-dd")); //按yyyy-MM-dd格式输出s Console.WriteLine(dt.ToString()); // 26/11/2009 AM 1

  • C# Task.Run() 启动方法总结2022-08-08 21:02:26

    Task 启动的线程是线程池里的,启动后默认为后台线程 无参无返回值 Task.Run(Test); public void Test() { ...to... } 无参带返回值 //以string返回值为例,Task<string>中的<string>可省略 //task前面的var也可以直接写Task<string>,这里如果直接写的话不能将<string>省略 var

  • C# Json和对象的转换,序列化和反序列化2022-08-08 13:05:24

    序列化: Student student1 = new Student { Id = 12883, Name = "Jim David", Scores = new double[] { 87.5, 92, 76.2 } }; Student student2 = new Student { Id = 35228, Name = "Milly Smith", Scores = new double[] { 92.5,

  • C#控件随窗体大小变化2022-08-08 12:32:03

    非自创,转载自大神易大胆888 private float X; private float Y; private void setTag(Control cons) { foreach (Control con in cons.Controls) { con.Tag = con.Width +":" + con.Height + ":" + con.Left + &q

  • Chapter 06 - SpeakLine (C# + delegate实现)2022-08-08 08:02:00

    不得不说C#继承了java的恶习,不能继承多个类,害我折腾了好久,终于实现了自己的delegate代理类。关键是Xamarin居然也没有实现对应的信号接口,所以只有自己暴露了一个信号接口,方便以后调用。先上C#代码   对应的Xcode布局没有什么变化,就添加了Outley的两个按钮。方便修改状态。 测

  • Chapter 05 - SpeakLine (C#篇)2022-08-08 05:30:33

    这个程序是调用MacOS的语音系统发音。 先上Xcode布局,XCode 13需要把Object放到对应的控件,才能拖拽Action & Outlet VS代码 C#写起来,果然比objective-c好看多了。结果图,可惜不能放语音。  

  • C#获取调用文件名,行号,方法2022-08-08 02:00:16

    一.第一种方式 [DebuggerStepThrough] //跳过调式 static void Print(string str, [CallerFilePath] string filePath = "",//文件路径 [CallerLineNumber] int num = 0, //行号 [CallerMemberName] string name

  • C#《原CSharp》第四回 人常见岁月更替 却难知人文相继2022-08-08 01:31:29

    纪芾显然此时并不是很能理解纪老爷子口中是也不是这句话的意思,不过他依然将这个要点记在了心里,方便以后悟出其最终门道的时候进行比对。 “今天,我在璃月港北边的一户人家,遇到了一个挺有意思的后生,他是今天才觉醒的元素力,但对于简单的元素力操作已经掌握了些许了。”纪存初还没等纪

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有