cSharp

C#(CSharp)入门教程 a 为 False&逻辑与运算符a & b 为 False|逻辑或运算符a | b 为 True^逻辑异或运算符a ^ b 为 True&&条件逻辑与运算符a && b 为 False||条件逻辑或运算符a || b 为 True。a 等于 -2> 2 等于 0>>>无符号右移运算符a >>> 2 等于 0&逻辑与运算符a & b 等于 0^逻辑异或运算符a ^ b 等于 3|逻辑或运算符a | b 等于 3。但是有时候也会用到死循环。 阅读详情

C#

1 .NET框架

支持传统的window应用系统和web应用系统开发,还可以支持跨平台移动开发和云开发。

1.1 net框架结构

.net框架体系结构由一下四个主要部分组成:

1.公共语言进行时(clr):公共语言进行时时.net框架应用程序的执行引擎。clr负责内存分配,启动和删除线程和进程,实施安全性策略,同时满足当前组件对其他组件的需要。

2.基础类库:.net框架为开发人员提供的一个统一的,面向对象的,层次化的,可扩展的类库集(API)。在.NET框架上各种语言都支持使用这个类库。

3.ADO.NET数据访问:它是一组用于和数据源交互的面向对象的类库。实现了ADO无法实现的三重需求。

4.活动服务器页面(c#):c#提供了web应用模型,该模型由一组控件和一个基本结构组成。C#使WEB应用程序的构建变得十分容易。

1.2 .net框架的优点

统一的程序设计模式:提供了跨语言的面向对象的同意程序设计模式,这种模式可以用于读写文件,数据库访问。

跨平台应用:应用程序可以运行在任意被clr支持的系统中。

多语言集成:允许多语言进行集成。可以在一种语言中使用另一种语言的类。

自动资源管理:crl会对应用程序所使用的资源进行自动检测,释放不需要的资源。

轻松部署:轻松生成安装文件。


1.3 .net的术语

CLR:公共语言运行时,处理加载程序,运行程序的代码,以及在提供支持服务的代码。

托管代码:.net中的所有代码都是托管代码,它们都是以运行库为目的的。

IL:中间语言,编译器把预先写好的代码编译为中间语言,il可以快速地编译为内部机器代码。

.net基类:是一个扩展的类库。它包含预先写好的代码,执行windows上的各种任务。

CLS:公共语言进行时,这是确保语言在任何语言中都访问的最小标准的集合,所有用于.net的编译器都应支持CLS.

JIT:just-in-time编译,用于表达执行编译过程的最后阶段,即从中间语言转换为内部机器码。

1.4 应用类型

1.windows窗体应用

2.控制台应用程序 //DOS环境下的命令行

3.ASP.NET WEB应用程序

4.类库 //类库通用


C#基础

1 主体框架

命名空间 > 类 > 方法

// 单行注释

/* */ 多行注释

Console.WriteLine("");向控制台输出(默认换行)

Console.Write("");向控制台输出(默认不换行)

Main()过程使程序的主过程。当程序执行时会从Main()开始。

using System;   //引入包
namespace  项目名{ 				//命名空间
    class Progrram {              //类名
    	static void Main(){		  //主函数(主方法)
            Console.WriteLine("");
            Console.Write("");
        }
    }
}

2 数据类型

C#是一种强类型语言。

C#的数据类型包括两类:引用类型和值类型

值类型:整型,浮点型,小数型,布尔型,结构,枚举,字符型。

引用类型:类类型,接口类型,委托类型,数组类型。

引用类型默认值为:NULL

整型

直接包含;short / ushort (凡是s开头即为有符号,u开头即为无符号。)

​ sbyte / byte

​ int / uint

   long  /  ulong

字符型

char:一个char类型包含2个字节(c中为1个),有三种定义方式。

char类型和ushort类型可以无损失转换。

byte存储占一个字节。

char a = 'A'
char a = '\xoo64' //十六进制
char a = '\u0065' //Unicode编码

浮点型

浮点型包括:double ,float

float定义时需要在赋值后加F/f。

double a = 1.111;
float b = 1.11f // float定义时需要在赋值后加F/f。

小数型

decimal能存储的小数位数非常多,在定义初始化的时候,需要在赋值之后加m.

//在定义初始化的时候,需要在赋值之后加m
decimal i = 1.222m

转义字符

c#中有一些字符不能直接输出如:单引号和双引号,空格,反斜杠,可以采取转义字符的形式进行显示。

转义字符字符备注
\0空字符
\a叹号
\b退格
\f换页
\r回车
\n换行
\t水平tab
\v垂直yab

3 变量和常量

c#允许用变量和常量存储数据。

变量

变量时程序运行中临时来存储数据的内存空间,在声明时需要指明其名称和数据类型。

变量名必须以字母开头变量名必须只包含字母,_下划线,数字,不能和c#中的关键字同名,不能和C#中的函数库名相同。

//声明之后再初始化:
float a ;//变量类型  变量名 ;

a = 1.1f	; //变量名 = 数值;
    
//声明的同时初始化
float a= 1.1 ;
常量

在程序运行过程中不会发生改变的量称为常量,使用const关键字来定义。只要定义就必须初始化。

常量和变量最大的区别就是:变量的值可以不断该改变,常量的值一但定义就不能改变,如果给一个已经定义的常量赋值,就会发生错误。

//使用const关键字来定义只要定义就必须初始化。
//const 常量类型 常量名 = 初始化值;
const float a = 1.2f;

4 运算符

运算符是一个符号,用来操作一个或者多个表达式。

4.1 算数运算符
运算符描述
+加-两个对象相加
-减-得到负数或是一个数减去另一个数
*乘-两个数相乘或是返回一个被重复若干次的字符串
/除-X除以Y
%取模-返回除法的余数
4.2 比较运算符
运算符描述
==等于-比较对象是否相等
!=不等于-比较两个对象是否不相等
>大于-返回X是否大于Y
<小于-返回X是否小于Y(所有比较运算符返回1为真,返回0表示假)
>=大于等于-返回X是否大于等于Y
<=小于等于-返回X是否小于等于Y
4.3 逻辑运算符
运算符描述
&&and布尔"与"-
!or布尔"或"-
||not布尔"非"-

5 流程控制语句

通过使用各种流程控制语句来控制语句的执行循环。

5.1 分支语句

分支语句分为if ,swich语句

if语句

一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。

static void Main(string[] args)
        {
          if(判断语句){    
          语句;
          }
          else if(判断语句){
          语句;  
          }    
          else{
          语句;    
          }    	
        }

switch语句

一个 switch 语句允许测试一个变量等于多个值时的情况。每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查。

switch (变量)
            {
                case 'A':
                    语句;
                    break;
                case 'B':
                case 'C':
                    语句;
                    break;
                case 'D':
                    语句;
                    break;
                case 'F':
                   语句;
                    break;
                default:
                    语句;
                    break;
            }
5.2 循环语句

有的时候,可能需要多次执行同一块代码。一般情况下,语句是顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。

while循环

只要给定的条件为真,C# 中的 while 循环语句会重复执行一个目标语句。

while (判断语句)
      {
	语句
       }

dowhile循环

do…while 循环是在循环的尾部检查它的条件。

do…while 循环与 while 循环类似,但是 do…while 循环会确保至少执行一次循环。

  do
      {
         语句;     
       } while (a < 20);

for循环

一个 for 循环是一个允许您编写一个执行特定次数的循环的重复控制结构。

for ( init; condition; increment )
{
   语句;
}

6 数组

数组和是具有相同数据类型的数据集合。数组中的每个数据称为数组元素,可以使用元素的位置索引号来访问数组元素。

6.1 数组声明

数组是引用类型,所以在数组声明后,必须为数组分配内存,为数组初始化。

//第一种初始化方式:
int[] arrayName;
arrayName = new int[4];

//第二种初始化方式:
int[] arrayName = new int[4];

//第三种初始化方式:
int[] arrayName = new int[4] {1,1,1,1}

//第四种初始化方式;
int[] arrayName = new int[] {1,1,1,1}

//第五种初始化方式:
int[] arrayName = {1,1,1,1}

6.2 二维数组

维数为逗号数+1

[,]只能声明等长的二维数组

//数据类型[,] 数组名 = new 数据类型[,];
int[,] arrayName = new int[3,2];

int[,] arrayName = new int[3,2] {{,},{,},{,}}

[][]的形式则可以声明等长二维数组,也可以声明不等长二维数组。

int[][] arrayName = new int[3];
int[0] arrayName = new int[2];
int[1] arrayName = new int[3];

7 类

其中含有构造函数和析造函数。

析造函数不能加修饰符。

1.类中成员:

属性,方法(函数),事件,变量(字段),常量;

2.类的访问修饰符:

internal(缺省):当前程序集;public(公共):全部;

类成员修饰符:

public(公共):全部;

private(私有的):当前类中;

protected(受保护的):当前类及子类中;

internal(当前程序集):当前程序集;

protected internal: protected 与 internal的并集;

构建类元素顺序:

添加类 -> 添加属性 -> 添加构造函数 -> 添加方法

初始化顺序:

静态变量 -> 静态构造方法 -> 变量 -> 构造方法

子类静态变量 -> 子类静态构造方法 -> 父类静态变量 -> 父类静态构造方法 -> 父类变量 -> 父类构造方法 ->子类变量 -> 子类构造方法

static 静态类与静态变量:

1.静态类和静态成员,无需创建类的实例,也不能创造实例,无论对象怎样改变,数据和函数不会发生变化。

2.静态类中只能访问静态变量。

3.类和静态类可以有静态构造函数,不能有普通构造函数,在程序开始与实例化之间的某个时刻调用,只调用一次。

4.类的实例成员函数可以访问类的实例成员,去不能通过类的实例来引用静态成员。却可以通过类型名引用静态成员。

5.静态类是密封的,不可被继承的。

私有构造函数阻止实例化。

8 对象

c#中使用New关键字来创建一个类的对象,即对类的实例化。

声明却没有给对象名赋值,这个对象为null;

实例化方法1:
    类名 对象名 = new 构造方法 ;
实例化方法2:
    类名 对象名;
    对象名 = new 构造方法;

9 继承

通过继承,可以直接基于现有的类创建新类。现有的类被称为基类,也叫父类,超类。新创建的类被称为派生类,子类。派生类继承基类的方法属性事件。

构造函数和析构函数不能被继承。

一个子类只能有一个父类。

派生类是对基类的扩展,只能添加不能减少。如果派生类新成员的名称与父类相同,则被覆盖。可以继承多个接口。

object类为所有类的基类。

class 子类名:父类名{
    新成员;
}
this关键字

this关键字引用当前正在执行的类或者结构的特定实例,可以用来访问类的成员。

指代的是当前实现该类的对象名。

public 类名{
    public 方法名(){
        int a = 1;
        Console.WriteLine("[0]",this.a)
    }
}
public 类名2{
    类名 对象名 = new 构造方法();
    
}
base关键字

base通常用于访问被派生类重写或者隐藏的基类成员,可以访问公共成员和受保护成员,私有成员不可访问。

public 父类名{
    public 方法名(){
        xxxx
    }
}
public 子类名:父类名{
    public 方法名(){
        ssss
        base.方法名();     //调用父类的方法,不会使用子类的同名方法。
    }
}

10 多态

10.1 重载

重载是指同一个类中存在名称相同但是参数列表不同的多个构造方法。

class 类名{
    public 类名(形参1){
        
    }
    public 类名(形参2){
        
    }    
}
10.2 重写

重写是指在派生类中的具有与基类中名称相同的方法或者属性。要在派生类中使用与基类中名称相同但目的不同的属性或者方法。

public 父类名{
    public 方法名(){
        
    }
}
public 子类名:父类名{
    public 方法名(){
        
    }
}
virtual 关键字(虚方法)

重写的属性和方法使用关键字virtual定义,声明这个方法或者属性可以被重写。

public 父类名{
    public virtual 类型 方法名(){    //声明这个方法可以在派生类中被重写
        
    }
}
public 子类名:父类名{
    public override 方法名(){      //声明这个方法是重写自父类的方法。
        
    }
}
override 关键字

声明在方法之前,表明此方法是重写自父类的方法。

public 父类名{
    public virtual 类型 方法名(){    //声明这个方法可以在派生类中被重写
        
    }
}
public 子类名:父类名{
    public override 方法名(){      //声明这个方法是重写自父类的方法。
        
    }
}
sealed 关键字

重写的方法使用关键字sealed定义,声明这个方法或者属性是密封的,不允许被重写。

类用关键字sealed定义,声明这个类是密封的,表示此类不能被继承。

public 父类名{
    public sealed 类型 方法名(){    //声明这个方法不能在派生类中被重写
        
    }
}
public 子类名:父类名{
    public override 方法名(){      //声明这个方法是重写自父类的方法,但是会报错,sealed不允许重写。        
    }
}
10.3 abstract(静态)

abstract关键字可以修饰类和方法。

修饰类,证明此类是抽象类,抽象类中可以有抽象方法,却不一定有抽象方法,抽象类可以被继承,不允许被实例化,因为含有抽象方法。继抽象类的类必须实现全部抽象方法后才能实例化,否则必须声明为抽象类。

修饰方法,证明此方法是抽象方法,有抽象方法的类一定是抽象类,不允许被实例化,只允许有函数名,不允许有函数体。

public 父类名{
    public abstract 类型 方法名()   //声明这个方法是抽象方法,不能有函数体。

    public abstract 类型 方法名()  //声明这个方法是抽象方法,不能有函数体。

    public 类型 方法名(){    //这是一个正常的方法。
        
    }
}
10.4 interface(接口)

一个类只能继承一个父类,一个接口却可继承多个接口。

不能直接实例化接口。

接口成员的默认访问类型都是public且只能是public。

interface 接口名{
    接口内容
}

重写

}

}
public 子类名:父类名{
public override 方法名(){ //声明这个方法是重写自父类的方法,但是会报错,sealed不允许重写。
}
}




#### 10.3 abstract(静态)

> abstract关键字可以修饰类和方法。
>
> 修饰类,证明此类是抽象类,抽象类中可以有抽象方法,却不一定有抽象方法,抽象类可以被继承,不允许被实例化,因为含有抽象方法。继抽象类的类必须实现全部抽象方法后才能实例化,否则必须声明为抽象类。
>
> 修饰方法,证明此方法是抽象方法,有抽象方法的类一定是抽象类,不允许被实例化,只允许有函数名,不允许有函数体。

```c#
public 父类名{
    public abstract 类型 方法名()   //声明这个方法是抽象方法,不能有函数体。

    public abstract 类型 方法名()  //声明这个方法是抽象方法,不能有函数体。

    public 类型 方法名(){    //这是一个正常的方法。
        
    }
}
10.4 interface(接口)

一个类只能继承一个父类,一个接口却可继承多个接口。

不能直接实例化接口。

接口成员的默认访问类型都是public且只能是public。

interface 接口名{
    接口内容
}
C#(C Sharp)介绍及应用案例 总之,C#是一种功能强大、易于学习和使用的编程语言,适用于各种类型的应用程序开发。无论是桌面应用程序、Web 应用程序、移动应用程序还是游戏开发,C#都提供了丰富的类库和框架,使得开发者可以更加高效地开发应用程序。C#(C Sharp)是一种由微软开发的面向对象的编程语言,主要用于开发各种类型的应用程序,包括桌面应用、Web 应用、移动应用和游戏等。然后,我们计算这两个整数的和,并将结果存储在变量。以下是一个用 C# 实现的简单的学生成绩管理系统控制台应用程序示例。在这个示例中,我们定义了两个整数变量。 阅读详情

相关推荐

(一)CSharp-网络编程

Dns 类是一个静态类,它提供了有关域名解析的操作,它将从网路主机域名系统中获取 IP 地址和主机名、WWW 域名的对应关系。为 Internet 主机地址信息提供容器的累,它将 DNS 主机名与一个别名数组和匹配的 IP 地址数组相关。该类中包含应用程序连接到主机服务时需要的主机和端口信息,通过组合主机的 IP 地址和端口号构成服务的一个连接点。主机地址分为若干个子网,分为子网地址和主机地址。,为两个端系统(也就是源站和目的站)的会话层之间,提供建立、维护和取消传输连接的功能,并负责可靠地传输数据。

用来学习的地方 5566

什么是CSharp

C# C#(C Sharp)是微软(Microsoft)为.NET Framework量身订做的程序语言,C#拥有C/C++的强大功能以及Visual Basic简易使用的特性,是第一个组件导向(Component-oriented)的程序语言,和C++与Java一样亦为对象导向(object-oriented)程序语言。 简介 C sharp(又 C# C#(C

挑战未来人生 2万+

某游戏的Assembly-CSharp.dll加密

Mono加载il代码库是调用mono.dll的导出函数mono_image_open_from_data_with_name完成的,如果某游戏对Assembly-CSharp.dll进行加密,那么肯定会在该导出函数或者里面的调用进行解密,否则该模块将无法正确加载,那么就来看看。哈哈,熟悉的4D5A出现了,那么这个肯定就是解密后的Assembly-CSharp.dll的数据了,而且经过上面的hook,知道了此文件大小是0x91010,十进制就是593936,也就是580kb左右。

laixicheng的博客 4469

Csharp学什么

我使用CSharp语言已经有几年的历史,有些新的学习者经常有各种各样的问题,在此就一个观点和大家交流一下:1、  Csharp和Java 哪个会更有前途,或者学Csharp好还是学java好。我的个人观点是Csharp和java都是编程工具。程序员没有必要考虑太多二者的优劣,但是好的程序员还是要两个都能有一定程度的掌握,当你工作以后具体使用的工具和领域是你的工作决定的。Java和Csharp都是好

Frankie 1万+

Unity3d 加密 Assembly-CSharp dll Android平台 全记录

Unity3d 加密 Assembly-CSharp dll Android平台 全记录

qq_44952746的博客 1737

STC8G1K08A 实战应用:从配置到功能实现

本文详细介绍了STC8G1K08A单片机的实战应用,从开发环境搭建、GPIO配置、ADC模块使用到定时器中断处理和PWM输出等核心功能。重点讲解了外设模块的协同工作配置技巧,并分享了实际项目开发中的经验教训,帮助开发者快速掌握STC8G1K08A的高效应用。

n4o5p6q7r的博客 390

Assembly-CSharp.dll和Assembly-CSharp-firstpass.dll

Assembly-CSharp.dll和Assembly-CSharp-firstpass.dll https://blog.youkuaiyun.com/u013244147/article/details/88561671 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.youkuaiyun.com/u013244147...

kuangben2000的博客 3103

网络工程系统CAD图:从设计到落地的关键技能与实战指南

网络工程并不只是配置路由器和交换机,真正的核心在于将设计方案转化为可施工的物理图纸。网络工程系统CAD图正是连接逻辑设计与物理世界的桥梁,它涵盖综合布线、信息点布置、桥架路由、弱电间规划等关键内容。理解并掌握这套图纸体系,是网络工程师从基础设备调试走向项目主导者、弱电总工乃至网络架构师的重要分水岭。在园区网、数据中心、智能楼宇等真实场景中,一套规范的系统CAD图直接决定了施工质量、验收效率与后期运维的可靠性。本文从基础概念出发,拆解图纸的组成层次、绘制流程和软件工作流,并结合学习路线与就业方向,帮助初学者建

weixin_33860553的博客 390

CSharp语法

CallerMemberName, CallerFilePath, 和 CallerLineNumber 是编译时常量,它们是csharp5.0引入的特性,用于提供有关调用堆栈的信息,通常用于日志记录和调试。这些特性可以自动填充方法的参数,无需显式传递信息。

xptwop的博客 363

scGPT学习资料汇总 - 单细胞多组学基础模型

scGPT(single-cell Generative Pre-trained Transformer)是一个针对单细胞多组学数据的基础模型,由多伦多大学Wang Bo实验室开发。该模型通过在超过3300万个细胞上进行生成式预训练,捕捉了基因和细胞之间的复杂关系,为多种下游任务提供了强大的基础。scGPT为单细胞分析提供了强大的基础模型和丰富的资源。通过本文汇总的学习材料,读者可以快速掌握scGPT的使用,并将其应用到自己的研究中。

2401_87189860的博客 838

EMC工程师职业发展:从测试整改到系统设计的进阶之路

电磁兼容(EMC)是确保电子设备在复杂电磁环境中可靠工作的关键技术,其核心在于控制电磁干扰(EMI)并提升抗扰度。其基本原理涉及电磁场理论、噪声耦合路径与滤波屏蔽技术。对于电子产品而言,EMC设计直接关系到能否通过CE、FCC等强制性认证,是产品上市和市场竞争力的关键。在工程实践中,EMC工程师需要从电路设计、PCB布局、元器件选型等源头入手,将EMC要求融入产品开发全流程,实现从后期“整改”到前期“设计预防”的价值跃迁。本文聚焦EMC工程师的核心能力体系构建与职业发展路径,深入探讨了如何从掌握标准测试、电

weixin_30819085的博客 388

CSharp语言

Csharp语法基础Csharp语法基础Csharp语法基础 章节2第2章 开发环境 课时4开发环境03:57 课时5第一个程序06:06 课时6认识CS项目05:21 章节3第3章 类型和变量 课时7类型和变量06:24 课时8控制台输出04:23 章节4第4章 类和对象 课时9添加类07:15 课时10字段和方法03:25 课时11构造方法02:27 课时12类的拆分 partial02:23 章节5第5章 属性 课时13Getter和Setter02:49 课时14添加属性08:08 课时15自动属性

Major_S的博客 2274

界面上下固定_基于ANSYS的胶粘结构界面开裂有限元计算

引言:目前工程上主要有螺栓,过盈,焊接和胶粘四种常用的连接方式,本文基于ANSYS Workbench环境,引入内聚力模型来实现对胶粘结构界面开裂失效的计算,文中的界面失效参数为随意给定,不是工程实际测试数据,仅起到演示作用!1.问题的描述如图所示给出了胶粘结构的三维模型,该胶粘结构由上下钢板组成,中间通过胶粘接到一起。(胶不需要建模,其影响主要通过内聚力模型实现)上下板的材料为结构钢,...

weixin_29473667的博客 1万+

为什么专业C开发者都选择VSCode-CSharp?5个高效开发技巧揭秘

想象一下这样的场景:你正在处理一个复杂的.NET Core微服务项目,需要快速定位生产环境中的bug。传统的IDE启动缓慢,而你的VSCode已经准备好——这要归功于VSCode-CSharp扩展的强大支持。作为微软官方的C#语言支持插件,它不仅仅是代码高亮工具,更是现代C#开发者的生产力倍增器。 ## 超越传统IDE的轻量级解决方案 VSCode-CSharp基于Language Serve

gitblog_00357的博客 946

嵌入式开发面试题全解析:指针、内存、数据类型关键问题总结

本文对嵌入式开发典型面试题进行深度解析,涵盖多方面关键知识。题目 19 揭示字符指针修改字符串常量的错误操作;题目 20 展现strcpy引发的缓冲区溢出风险;题目 21 体现未初始化数组与strlen结合的不可预测性;题目 22 通过位域与对齐规则计算结构体大小;题目 23 因unsigned char溢出导致循环异常。这些题目全面覆盖指针操作、内存管理、数据类型特性等核心内容,精准指出开发中易疏忽的陷阱,有助于理解编程规范,规避风险,提升代码质量与稳定性,是深入掌握嵌入式开发要点的实用指南。

嵌入式中手 1364

Python 爬虫实战:Twitter 数据定向抓取(特定话题 + 用户推文爬取与分析)

在社交媒体研究、舆情监测和市场分析等领域,Twitter 数据具有极高的价值。本文将详细介绍如何使用 Python 构建一个完整的 Twitter 数据爬取系统,包括特定话题和用户推文的爬取与分析。我们将涵盖从认证到数据存储、清洗、分析和可视化的全流程。

u014481728的博客 1035

csharp & c++

1。 析构函数 - CSharp中是在紧靠GC回收无用单元之前调用,而C++是在对象离开作用域时调用,两者有很大不同,因为GC何时回收是随机得,当它发现内存不足,或者CPU空闲或其他合适时间(什么是合适时间?我也不知道)就会调用,所以CSharp中的析构函数何时调用也是无法预知得. 那么,既然GC可以回收无用单元,CSharp中得析构函数是否无用呢?当然不是,比如说可以通过在类中定义静态...

weixin_30278237的博客 777

Xilinx DDR3 MIG IP核设计--汇总导航

快速上手Xilinx DDR3 IP核----汇总篇

孤独的单刀 2万+

'Microsoft.CSharp.RuntimeBinder.Binder' is not defined or imported

<br />最近将某个.net 2.0 项目升级到 4.0 <br />结果报出“'Microsoft.CSharp.RuntimeBinder.Binder' is not defined or imported” 这个错误<br /> <br />在项引用里添加 MICROSOFT.CSHARP 后问题得到结局<br /> <br />PS:为什么升级到4.0时VS不自动添加呢......

nikolay的专栏 3290

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

aima-csharp 项目教程

aima-csharp 项目教程 1. 项目目录结构及介绍 aima-csharp/ ├── aima-csharp-unity/ ├── aima-csharp/ │ ├── gitattributes │ ├── gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── aima-csharp...

gitblog_00929的博客 285

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

[原创]安卓U3D逆向从Assembly-CSharp到il2cpp

https://bbs.pediy.com/thread-223467.htm 随着unity技术的发展及厂商对于脚本源码的保护,很大一部分U3D应用的scripting backend已经由mono转为了il2cpp,本文从unity简单应用的制作讲起,介绍U3D应用脚本的Assembly-CSharp.dll的逆向及il2cpp.so的逆向分析。 目录如下: 0x1.U3D应用制作...

kuangben2000的博客 3788

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

CSharp 基本知识-数组

1.数组CSharp 的数组从 0 开始声明数组时 "[ ]"放在类型名的后面,而不能放在标示符的后面,放在标示符的后面是别一种语法如 int[] table  而不是  int table[]另一细节是数组的大小不是其类型的一部分,而在C语言中数组的大小确是数组类型的一部分,可以声明一个数组关为它分配 int (觉得这里好像说的不对,应该是"类型")  对象的任意数组, 不管长度如何如:int[

Qi_jianzhou的资料室 2万+

C# Log4CSharp.LogManager事例

static void Main(string[] args)         {             string date = DateTime.Now.ToString("yyyyMMdd");             Log4CSharp.LogManager.LogPath = "E:/log/" + date + "/";             ActionInfo();

菜刀居士的专栏 3661

CSharp.Ulid:高性能C实现的ULID库教程

CSharp.Ulid:高性能C#实现的ULID库教程 项目介绍 CSharp.Ulid 是一个专为.NET Core 和 Unity 设计的快速、可排序的随机ID生成器。它采用[MessagePack-CSharp]技术以追求极致性能,确保比传统的Guid.NewGuid()更快生成ULIDs。ULID(Universally Unique Lexicographically Sortable ...

gitblog_00721的博客 1190

glTF-CSharp-Loader 项目教程

glTF-CSharp-Loader 项目教程 1. 项目介绍 glTF-CSharp-Loader 是一个由 KhronosGroup 开发的 C# 参考加载器,用于加载 glTF 格式的 3D 模型。glTF(GL Transmission Format)是一种用于传输和加载 3D 场景和模型的开放标准格式。该项目提供了一个简单易用的接口,使得开发者可以在 C# 项目中轻松加载和使用 glTF...

gitblog_00126的博客 1227
上一篇: web基础
下一篇: 微信小程序
元气满满的凡诚
博客等级 码龄6年 50粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值