C#和VB.net语法对比图

VB,VB.NET,C#对比 VB.NET与VB6.0相似的地方还是很多的。至少看到界面我不会陌生,直接上手操作。当然,也是有区别的地方的。VB基于对象面向的,而VB.NET是完全面向对象的。VB6.0不支持继承、重载和接口。而且,在异常处理上,VB.NET做的更好。 在VB6.0中,使用的非结构化的On Error Goto和On Error Resume Next异常处理语句。而在VB.NET中,使用了结构化的Try…Catch…Finally异常处理语句。 之前也有学习过C#,VB.NET和C#都是微软开发的面向对象的计算机语言。 阅读详情

C#和VB.net语法对比图

注释Comments

VB.NET

 

'Single line only

REM Single line only

 

C#

// Single line

/* Multiple

line */

/// XML comments on single line

/** XML comments on multiple lines */
 

数据类型 Data Types

VB.NET 

        '值类型 Value Types

Boolean

Byte

Char (example: "A")

Short, Integer, Long

Single, Double

Decimal

Date

 

        '引用类型 Reference Types

Object

String

Dim x As Integer

System.Console.WriteLine(x.GetType())

System.Console.WriteLine(TypeName(x))

 

'类型转换 Type conversion

Dim d As Single = 3.5

Dim i As Integer = CType(d, Integer)

i = CInt(d)

i = Int(d)

 

C# 

//值类型 Value Types

bool

byte, sbyte

char (example: ‘A‘)

short, ushort, int, uint, long, ulong

float, double

decimal

DateTime

 

//引用类型 Reference Types

object

string

int x;

Console.WriteLine(x.GetType())

Console.WriteLine(typeof(int))

//类型转换 Type conversion

float d = 3.5;

int i = (int) d 

常量 Constants

VB.NET

Const MAX_AUTHORS As Integer = 25

ReadOnly MIN_RANK As Single = 5.0

C#

const int MAX_AUTHORS = 25;

readonly float MIN_RANKING = 5.00f;

 

枚举 Enumerations

VB.NET

  Enum Action

        Start

        'Stop是个关键字 Stop is a reserved word

        [Stop]

        Rewind

        Forward

  End Enum

  Enum Status

    Flunk = 50

    Pass = 70

    Excel = 90

End Enum
 
 

  Dim a As Action = Action.Stop

  If a <> Action.Start Then

       'Prints "Stop is 1"

       System.Console.WriteLine(a.ToString & " is " & a)

  End If

  'Prints 70

  System.Console.WriteLine(Status.Pass)

  'Prints Pass

  System.Console.WriteLine(Status.Pass.ToString())

 

 

C#

enum Action

{

    Start,

    Stop,

    Rewind,

    Forward

};

enum Status

{

    Flunk = 50,

    Pass = 70,

    Excel = 90

};

 

Action a = Action.Stop;

if (a != Action.Start)

   //Prints "Stop is 1"

   System.Console.WriteLine(a + " is " + (int)a);

// Prints 70

System.Console.WriteLine((int)Status.Pass);

// Prints Pass

System.Console.WriteLine(Status.Pass);

操作符 Operators

VB.NET

 

'比较运算符 Comparison

 =  <  >  <=  >=  <>

'数学运算符 Arithmetic

    +  -  *  /

    Mod

    /  (integer division)

    ^  (raise to a power)

'赋值运算符 Assignment

    =  +=  -=  *=  /=  =  ^=  <<=  >>=  &=

'按位运算符 Bitwise

    And  AndAlso  Or  OrElse  Not  <<  >>

'逻辑运算符 Logical

    And  AndAlso  Or  OrElse  Not

'字符串运算符 String Concatenation

    &

 

C#

 

//比较运算符Comparison

==  <  >  <=  >=  !=

//数学运算符Arithmetic

+  -  *  /

%  (mod)

/  (integer division if both operands are ints)

Math.Pow(x, y)

//赋值运算符 Assignment

=  +=  -=  *=  /=   %=  &=  =  ^=  <<=  >>=  ++  --

//按位运算符 Bitwise

&    ^   ~  <<  >>

//逻辑运算符 Logical

&&     !

//字符串运算符 String Concatenation

+

 

 

选择语句 Choices

VB.NET

 

greeting = IIf(age < 20, "What‘s up?", "Hello")

 

'同一行不用”End If” One line doesn‘t require "End If", no "Else"

If language = "VB.NET" Then langType = "verbose"

 

'Use: to put two commands on same line

If x <> 100 And y < 5 Then x *= 5 : y *= 2

 

'Preferred

If x <> 100 And y < 5 Then

    x *= 5

    y *= 2

End If

 

'or to break up any long single command use _

If henYouHaveAReally < longLine And _

itNeedsToBeBrokenInto2 > Lines Then _

  UseTheUnderscore(charToBreakItUp)

If x > 5 Then

    x *= y

ElseIf x = 5 Then

    x += y

ElseIf x < 10 Then

    x -= y

Else

    x /= y

End If

 

'Must be a primitive data type

Select Case color

    Case "black", "red"

        r += 1

    Case "blue"

        b += 1

    Case "green"

        g += 1

    Case Else

        other += 1

End Select

 

C#

  

greeting = age < 20 ? "What‘s up?" : "Hello";

 

   

 

 

 

 

if (x != 100 && y < 5)

  {

      // Multiple statements must be enclosed in {}

    x *= 5;

  y *= 2;

}

 

if (x > 5)

   x *= y;

else if (x == 5)

   x += y;

else if (x < 10)

   x -= y;

else

   x /= y;

   

 

 

 

 

//Must be integer or string

switch (color)

{

  case "black":

  case "red":r++;

       break;

  case "blue"

       break;

  case "green": g++; 

       break;

  default: other++;

       break;

}

循环语句 Loops

VB.NET

'Pre-test Loops:

While c < 10

    c += 1

End While

 

Do Until c = 10

    c += 1

Loop

 

'Post-test Loop:

Do While c < 10

    c += 1

Loop

 

For c = 2 To 10 Step 2

    System.Console.WriteLine(c)

Next

 

'Array or collection looping

Dim names As String() = {"Steven", "SuOk", "Sarah"}

For Each s As String In names

    System.Console.WriteLine(s)

Next

 

C#

//Pre-test Loops:

while (i < 10)

  i++;

 

 

//Post-test Loop:

do

  i++;

while (i < 10);

 

 

 

 

 

for (i = 2; i < = 10; i += 2)

  System.Console.WriteLine(i);

 

// Array or collection looping

string[] names = {"Steven", "SuOk", "Sarah"};

foreach (string s in names)

  System.Console.WriteLine(s);

 

数组 Arrays

VB.NET 

Dim nums() As Integer = {1, 2, 3}

For i As Integer = 0 To nums.Length - 1

    Console.WriteLine(nums(i))

Next

 

'4 is the index of the last element, so it holds 5 elements

Dim names(4) As String

names(0) = "Steven"

'Throws System.IndexOutOfRangeException

names(5) = "Sarah"

 

'Resize the array, keeping the existing

'values (Preserve is optional)

ReDim Preserve names(6)

Dim twoD(rows - 1, cols - 1) As Single

twoD(2, 0) = 4.5

 

 

 

Dim jagged()() As Integer = { _

  New Integer(4) {}, New Integer(1) {}, New Integer(2) {}}

jagged(0)(4) = 5

 

C# 

int[] nums = {1, 2, 3};

for (int i = 0; i < nums.Length; i++)

  Console.WriteLine(nums[i]);

 

// 5 is the size of the array

string[] names = new string[5];

names[0] = "Steven";

// Throws System.IndexOutOfRangeException

names[5] = "Sarah";

 

// C# can‘t dynamically resize an array.

//Just copy into new array.

string[] names2 = new string[7];

// or names.CopyTo(names2, 0);

Array.Copy(names, names2, names.Length);

 

float[,] twoD = new float[rows, cols];

twoD[2,0] = 4.5f;

 

int[][] jagged = new int[3][] {

  new int[5], new int[2], new int[3] };

jagged[0][4] = 5;

 

函数 Functions

VB.NET

'Pass by value (in, default), reference

'(in/out), and reference (out)

Sub TestFunc(ByVal x As Integer, ByRef y As Integer, ByRef z As Integer)

x += 1

y += 1

z = 5

End Sub

'c set to zero by default

Dim a = 1, b = 1, c As Integer

TestFunc(a, b, c)

System.Console.WriteLine("{0} {1} {2}", a, b, c) ‘1 2 5

 

'Accept variable number of arguments

Function Sum(ByVal ParamArray nums As Integer()) As Integer

    Sum = 0

    For Each i As Integer In nums

        Sum += i

    Next

End Function 'Or use a Return statement like C#

 

Dim total As Integer = Sum(4, 3, 2, 1) 'returns 1

 

'Optional parameters must be listed last

'and must have a default value

Sub SayHello(ByVal name As String, Optional ByVal prefix As String = "")

    Response.Write("Greetings, " & prefix & " " & name)

End Sub

SayHello("Steven", "Dr.")

SayHello("SuOk")

 

C#

// Pass by value (in, default), reference

//(in/out), and reference (out)

void TestFunc(int x, ref int y, out int z) {

  x++;

  y++;

  z = 5;

}

int a = 1, b = 1, c; // c doesn‘t need initializing

TestFunc(a, ref b, out c);

System.Console.WriteLine("{0} {1} {2}", a, b, c); // 1 2 5

 

// Accept variable number of arguments

int Sum(params int[] nums) {

  int sum = 0;

  foreach (int i in nums)

    sum += i;

  return sum;

}

int total = Sum(4, 3, 2, 1); // returns 10

 

/* C# doesn‘t support optional arguments/parameters.

Just create two different versions of the same function. */

void SayHello(string name, string prefix) {

  System.Console.WriteLine("Greetings, " + prefix + " " + name);

}

void SayHello(string name) {

  SayHello(name, "");

} 

异常处理 Exception Handling

VB.NE 

'Deprecated unstructured error handling

On Error GoTo MyErrorHandler

     DoSomething()

MyErrorHandler:

System.Console.WriteLine(Err.Description)

 

Dim ex As New Exception("Something has really gone wrong.")

Throw ex

 

Try

    y = 0

    x = 10 / y

Catch ex As Exception When y = 0 'Argument and When is optional

    System.Console.WriteLine(ex.Message)

Finally

    DoSomething()

End Try 

C#

 

Exception up = new Exception("Something is really wrong.");

throw up; // ha ha

 

 

try{

  y = 0;

  x = 10 / y;

}

catch (Exception ex) { //Argument is optional, no "When" keyword

  Console.WriteLine(ex.Message);

}

finally{

  // Do something

} 

命名空间 Namespaces

VB.NET 

Namespace ASPAlliance.DotNet.Community

    'Do something

End Namespace

'or

Namespace ASPAlliance

    Namespace DotNet

        Namespace Community

                    'Do something

        End Namespace

    End Namespace

End Namespace

 

Imports ASPAlliance.DotNet.Community 

C# 

namespace ASPAlliance.DotNet.Community

{

    //Do something

}

// or

namespace ASPAlliance {

  namespace DotNet {

    namespace Community {

    //Do something

    }

  }

}

 

using ASPAlliance.DotNet.Community;

类/接口 Classes / Interfaces

VB.NET 

'Accessibility keywords

Public

Private

Friend

Protected

Protected Friend

Shared

 

'Inheritance

Class Articles

    Inherits Authors

            ' ...

End Class

'Interface definition

Interface IArticle

    ' ...

End Interface

 

'Extending an interface

Interface IArticle

    Inherits IAuthor

    '...

End Interface

 

'Interface implementation

Class PublicationDate

    Implements IArticle, IRating

    '...

End Class 

C# 

//Accessibility keywords

public

private

internal

protected

protected internal

static

//Inheritance

class Articles: Authors {

  ...

}

//Interface definition

interface IArticle {

  //...

}

//Extending an interface

interface IArticle: IAuthor {

  //...

}

//Interface implementation

class PublicationDate: IArticle, IRating {

   //...

} 

构造函数/析构函数 Constructors / Destructors

VB.NET

Class TopAuthor

    Private _topAuthor As Integer

    Public Sub New()

        _topAuthor = 0

    End Sub

 

    Public Sub New(ByVal topAuthor As Integer)

        Me._topAuthor = topAuthor

    End Sub

 

    Protected Overrides Sub Finalize()

        'Desctructor code to free unmanaged resources

        MyBase.Finalize()

    End Sub

 

End Class

C# 

class TopAuthor

{

    private int _topAuthor;

    public TopAuthor()

    {

        _topAuthor = 0;

    }

    public TopAuthor(int topAuthor)

    {

        this._topAuthor = topAuthor;

    }

    TopAuthor()

    {

        // Destructor code to free unmanaged resources.

        // Implicitly creates a Finalize method

    }

} 

对象 Objects

VB.NET 

Dim author As TopAuthor = New TopAuthor

With author

    .Name = "Steven"

    .AuthorRanking = 3

End With

author.Rank("Scott")

author.Demote() 'Calling Shared method

 

'or

TopAuthor.Rank()

Dim author2 As TopAuthor = author 'Both refer to same object

author2.Name = "Joe"

System.Console.WriteLine(author2.Name) 'Prints Joe

 

author = Nothing 'Free the object

If author Is Nothing Then _

  author = New TopAuthor

 

Dim obj As Object = New TopAuthor

If TypeOf obj Is TopAuthor Then _

  System.Console.WriteLine("Is a TopAuthor object.") 

C# 

TopAuthor author = new TopAuthor();

//No "With" construct

author.Name = "Steven";

author.AuthorRanking = 3;

author.Rank("Scott");

 

 

TopAuthor.Demote() //Calling static method

TopAuthor author2 = author //Both refer to same object

author2.Name = "Joe";

System.Console.WriteLine(author2.Name) //Prints Joe

 

 

author = null //Free the object

if (author == null)

  author = new TopAuthor();

 

Object obj = new TopAuthor();

if (obj is TopAuthor)

  SystConsole.WriteLine("Is a TopAuthor object.");

结构体 Structs

VB.NET 

Structure AuthorRecord

      Public name As String

      Public rank As Single

      Public Sub New(ByVal name As String, ByVal rank As Single)

          Me.name = name

          Me.rank = rank

      End Sub

End Structure

 

Dim author As AuthorRecord = New AuthorRecord("Steven", 8.8)

Dim author2 As AuthorRecord = author

author2.name = "Scott"

System.Console.WriteLine(author.name)  ‘Prints Steven

System.Console.WriteLine(author2.name) ‘Prints Scott

 

C#

struct AuthorRecord {

    public string name;

    public float rank;

    public AuthorRecord(string name, float rank) {

    this.name = name;

    this.rank = rank;

    }

}

 

AuthorRecord author = new AuthorRecord("Steven", 8.8);

AuthorRecord author2 = author

author.name = "Scott";

SystemConsole.WriteLine(author.name);   //Prints Steven

System.Console.WriteLine(author2.name); //Prints Scott

 

属性 Properties

VB.NET 

Private _size As Integer

Public Property Size() As Integer

    Get

        Return _size

    End Get

    Set(ByVal Value As Integer)

        If Value < 0 Then

            _size = 0

        Else

            _size = Value

        End If

    End Set

End Property

 

foo.Size += 1

 

C#

private int _size;

public int Size

{

  get

  {

        return _size;

  }

  set

  {

    if (value < 0)

      _size = 0;

    else

      _size = value;

  }

}

foo.Size++; 

代理/事件 Delegates / Events

VB.NET

Delegate Sub MsgArrivedEventHandler(ByVal message As String)

Event MsgArrivedEvent As MsgArrivedEventHandler

 

'or to define an event which declares a

'delegate implicitly

Event MsgArrivedEvent(ByVal message As String)

        AddHandler MsgArrivedEvent, AddressOf My_MsgArrivedCallback

'Won‘t throw an exception if obj is Nothing

RaiseEvent MsgArrivedEvent("Test message")

RemoveHandler MsgArrivedEvent, AddressOf My_MsgArrivedCallback

Imports System.Windows.Forms

 

    'WithEvents can‘t be used on local variable

Dim WithEvents MyButton As Button

MyButton = New Button

Private Sub MyButton_Click(ByVal sender As System.Object, _

      ByVal e As System.EventArgs) Handles MyButton.Click

    MessageBox.Show(Me, "Button was clicked", "Info", _

       MessageBoxButtons.OK, MessageBoxIcon.Information)

End Sub

 

C#

 

delegate void MsgArrivedEventHandler(string message);

event MsgArrivedEventHandler MsgArrivedEvent;

 

//Delegates must be used with events in C#

MsgArrivedEvent += new MsgArrivedEventHandler

  (My_MsgArrivedEventCallback);

 

//Throws exception if obj is null

MsgArrivedEvent("Test message");

MsgArrivedEvent -= new MsgArrivedEventHandler

  (My_MsgArrivedEventCallback);

 

using System.Windows.Forms;

 

Button MyButton = new Button();

MyButton.Click += new System.EventHandler(MyButton_Click);

 

private void MyButton_Click(object sender,System.EventArgs e) {

  MessageBox.Show(this, "Button was clicked", "Info",

    MessageBoxButtons.OK, MessageBoxIcon.Information);

} 

输入输出 Console I/O

VB.NET

'Special character constants

vbCrLf, vbCr, vbLf, vbNewLine

vbNullString

vbTab

vbBack

vbFormFeed

vbVerticalTab

 

Chr(65) 'Returns ‘A‘

 

System.Console.Write("What‘s your name? ")

Dim name As String = System.Console.ReadLine()

System.Console.Write("How old are you? ")

Dim age As Integer = Val(System.Console.ReadLine())

 

System.Console.WriteLine("{0} is {1} years old.", name, age)

'or

System.Console.WriteLine(name & " is " & age & " years old.")

 

Dim c As Integer

c = System.Console.Read() 'Read single char

System.Console.WriteLine(c) 'Prints 65 if user enters "A"

C#

 

//Escape sequences

n, r

t

 

Convert.ToChar(65)

//Returns ‘A‘ - equivalent to Chr(num) in VB

// or

(char) 65

 

System.Console.Write("What‘s your name? ");

string name = SYstem.Console.ReadLine();

System.Console.Write("How old are you? ");

int age = Convert.ToInt32(System.Console.ReadLine());

 

System.Console.WriteLine("{0} is {1} years old.", name, age);

//or

System.Console.WriteLine(name + " is " + age + " years old.");

 

int c = System.Console.Read(); //Read single char

System.Console.WriteLine(c);

//Prints 65 if user enters "A" 

文件输入输出File I/O

VB.NET

Imports System.IO

 

'Write out to text file

Dim writer As StreamWriter = File.CreateText("c:/myfile.txt")

writer.WriteLine("Out to file.")

writer.Close()

 

'Read all lines from text file

Dim reader As StreamReader = File.OpenText("c:/myfile.txt")

Dim line As String = reader.ReadLine()

While Not line Is Nothing

    Console.WriteLine(line)

    line = reader.ReadLine()

End While

reader.Close()

 

'Write out to binary file

Dim str As String = "Text data"

Dim num As Integer = 123

Dim binWriter As New BinaryWriter(File.OpenWrite("c:/myfile.dat"))

binWriter.Write(str)

binWriter.Write(num)

binWriter.Close()

 

'Read from binary file

Dim binReader As New BinaryReader(File.OpenRead("c:/myfile.dat"))

str = binReader.ReadString()

num = binReader.ReadInt32()

binReader.Close() 

C#

using System.IO;

//Write out to text file

StreamWriter writer = File.CreateText("c://myfile.txt");

writer.WriteLine("Out to file.");

writer.Close();

 

//Read all lines from text file

StreamReader reader = File.OpenText("c://myfile.txt");

string line = reader.ReadLine();

while (line != null) {

  Console.WriteLine(line);

  line = reader.ReadLine();

}

reader.Close();

 

 

//Write out to binary file

string str = "Text data";

int num = 123;

BinaryWriter binWriter = new BinaryWriter(File.OpenWrite("c://myfile.dat"));

binWriter.Write(str);

binWriter.Write(num);

binWriter.Close();

 

//Read from binary file

BinaryReader binReader = new BinaryReader(File.OpenRead("c://myfile.dat"));

str = binReader.ReadString();

num = binReader.ReadInt32();

binReader.Close(); 

C#与vb.net的区别 http://blog.csdn.net/zxj911/archive/2005/01/10/247062.aspx都说在.NET里,.NET framework和CLR是应用运行的基础。那么VB.NET和C#是不是就完全一样,只是语法不同吗?一、C#--- 像VB一样简单,像C++一样强大的新语C#是第一流的面向组件的语言由 Turbo Pascal, Delphi, and Visua 阅读详情

相关推荐

同步整流buck电路图设计:手把手入门必看

从零开始拆解同步整流Buck电路图及其原理,手把手带你画出关键拓扑、选型MOSFET、分析续流路径。重点讲清占空比控制逻辑与体二极管导通损耗的规避方法,让buck电路图及其原理真正落地可调、稳定可靠。

weixin_33308579的博客 995

vb.net 参考-关键字,常量,数据类型,

VB.Net关键字 下表列出了VB.Net保留的关键字: AddHandler AddressOf Alias And AndAlso As Boolean ByRef Byte ByVal Call Case Catch CBoo...

weixin_30813225的博客 390

基于Dify1.9知识库流水线模板的思考——图像和表格数据处理

本文探讨了Dify1.9知识库流水线中LLM节点对文档图像/表格增强处理的优化方案。针对当前仅在内容后追加说明的简单做法,提出了结构化标注的改进方法:通过唯一ID和注释块标记图像/表格及其描述,确保内容可精准对齐。文章详细阐述了该方案的解析处理流程、数据结构化表示方法,以及在RAG检索和文档还原中的具体应用。关键经验包括:必须结构化标注非文本内容、LLM增强的必要性、语义向量化处理等。该方案解决了原始方法在内容重排、相似元素区分和检索精度等方面的问题。

roseey的专栏 1436

代表和事件之间有什么区别?

What are the differences between delegates and an events? 代表和事件之间有什么区别? Don't both hold references

w36680130的博客 384

从USB 2.0到USB 3.x:Synopsys SVT USB VIP配置避坑与接口选择指南

本文详细解析了从USB 2.0到USB 3.x的Synopsys SVT USB VIP配置要点,涵盖协议版本选择、物理接口匹配及UVM层次化架构实现。重点介绍了layering sequence的配置技巧和常见问题解决方案,帮助验证工程师高效避坑并优化验证流程。

weixin_42653691的博客 238

FreeRtos——10、全局看门狗设计

RTOS 里的看门狗不只是为了证明 CPU 还在动,而是为了证明每个业务逻辑都在按预期的节奏“呼吸”。

qq_40170041的博客 900

vb.net和c#的语法比较

学习三层有相当一段时间了,一直都在用c#练习。现在要开始vb.net版机房

思想上移,行动下移 2117

基于YOLOv5的空间目标智能监测系统:航天器与太空碎片识别技术实现

做完这个项目,你会发现自己完整走过了“数据采集→标注→模型训练→功能集成→界面开发”的毕设全流程,这不仅是技术能力的证明,更是对“技术守护宇宙安全”这一理念的实践。答辩时,你可以重点讲这几点:系统解决了航天监测的哪些痛点、YOLOv5在太空目标检测中的性能优势、系统未来能怎么优化(比如对接航天监测网络、实现实时轨道预测)。未来,这个系统还能往“更智能”的方向发展:比如结合轨道计算预测碰撞风险、开发移动端APP让天文爱好者参与太空垃圾上报、在航天任务中实现全自动避障决策……想象空间很大。

m0_64661770的博客 110

C#/VB.NET语法的比较

最近因为工作的关系,需要从用了三年的C#转用VB.NET啦。没有办法,本来嘛,使用语言是没有很大的关系的。但刚刚使用的时候,多多少少还是有一些磕磕碰碰的。主要是代码编写的操作便捷方面,总结几点: ◎代码编定实现Interface时   C#中使用 :Interface,然后按shift+alt+F10回车,呵呵,全部接口需实现的方法属性全部自动生成。当然这个是2005才有的。2003不知有...

weixin_33994444的博客 293

uniapp(全端兼容)-最新详细实现接入腾讯云IM即时通讯教程,uniapp在安卓苹果app端/小程序/h5移动端等集成使用腾讯云im插件,提供消息列表与聊天对话示例,支持发图片/私聊/实时监听消息

uni-app,腾讯云IM,安卓app,苹果app,微信小程序,移动端,H5网页,手机网站,微信小程序、支付宝小程序,手机app端,nvue,im即时通讯,腾讯云IM详细教程,如何接入腾讯IM即时通讯,使用腾讯im有没有插件,怎么使用腾讯云IM插件,tim-wx-sdk,聊天sdk,即时通讯im uniapp私聊/群聊/聊天室,实现IM即时通讯仿微信聊天功能,对接腾讯云IM+音视频,调用腾讯即时通信IM的示例,卡顿很卡不流畅,音视频,全局监听,仿微信IM,uni-huanxin-im,sdk,实现多端实时通

✅ 精选推荐文章 1万+

基于STM32设计的消防小车

当前基于STM32单片机设计了一款智能消防小车;当前小车支持烟雾浓度检测、可燃气体检测,环境温度湿度检测、火焰源检测、能支持远程遥控,方便消防员远程操控进行灭火。小车也支持自动消防,在行驶过程中,消防智能小车通过火焰传感器感应火源以检测火焰具体位置,可以利用算法设计进行循迹灭火,该模式下驱动电机水泵喷水,可以有效控制火源的第二次发生,从而完成消防作业。小车本身带了超声波测距模块,红外壁障模块,在自动或者手动控制行驶过程中可以防止碰到障碍物损伤小车。

7377

vb.net 和 c# 语法对比图

C#和VB.net的语法相差还是比较大的. 可能您会C#,可能您会VB.将他们俩放在一起对比一下您就会很快读懂,并掌控另一门语言.相信下面这张图会对您帮助很大. CommentsVB.NET Single line onlyRem Single line only C#// Single line/* Multipleli

roamer1981的专栏 394

YOLO26 终极蒸馏指南:从入门到 SOTA (The Ultimate Distillation Guide)

《YOLO26 蒸馏技术指南》深入解析了知识蒸馏在目标检测中的应用,提出五大蒸馏范式:响应蒸馏(学习最终输出)、特征蒸馏(模仿中间特征)、关系蒸馏(捕捉通道关联)、CWD(通道语义对齐)和FGD(前景背景分离)。实验表明,"Response KD + CWD + FGD"组合效果最佳,使YOLO26n在0.5ms推理速度下达到0.956 mAP50,甚至超越教师模型。指南提供模块化代码实现和超参数调优建议,强调蒸馏能平衡模型精度与效率,是轻量化部署的有效方案。

weixin_51988935的博客 717

[转]C#和VB.net语法对比图

                                       [转]C#和VB.net语法对比图C#和VB.net的语法相差还是比较大的. 可能你会C#,可能你会VB.将它们俩放在一起对比一下你就会很快读懂,并掌握另一门语言.相信下面这张表会对你帮助很大.  

yzc的专栏 1742

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

VB C# 语法对比图 (代码实例)

VB C# 语法对比图 (代码实例)[日期:2005-03-03]来源:alphatom.com  作者:idior[字体:大 中 小] C#和VB.net的语法相差还是比较大的. 可能你会C#,可能你会VB.将它们俩放在一起对比一下你就会很快读懂,并掌握另一门语言.相信下面这张图会对你帮助很大. CommentsVB.NET Single line onlyRem Single line

渣渣的驳克枪 907

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

C#和VB.net语法对比图_C#教程

C#和VB.net的语法相差还是比较大的. 可能你会C#,可能你会VB.将它们俩放在一起对比一下你就会很快读懂,并掌握另一门语言.相信下面这张图会对你帮助很大. CommentsVB.NET Single line onlyRem Single line only C#// Single line/* Multiplel

生活 技术 娱乐 782

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

C#和VB.net语法对比图(转)

C#和VB.net的语法相差还是比较大的. 可能你会C#,可能你会VB. 将它们俩放在一起对比一下你就会很快读懂,并掌握另一门语言. 相信下面这张图会对你帮助很大. Comments VB.NET 'Single line only Rem Single line only C#// Single line /* Multiple l...

weixin_34110749的博客 83

C#和VB.net语法对比

C#和VB.net的语法相差还是比较大的. 可能你会C#,可能你会VB. 将它们俩放在一起对比一下你就会很快读懂,并掌握另一门语言. 相信下面这张图会对你帮助很大. Comments VB.NET   ‘Single line only Rem Single line only   C# // Sing

Chobits的专栏 2698
上一篇: C#分部类和分部方法的使用
下一篇: CSS样式选择器的总结
aspnet2002web
博客等级 码龄21年 482粉丝 310原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值