C#学习笔记
记录了学习C#的一些笔记吖~供今后不断学习补充
屿十_
这个作者很懒,什么都没留下…
展开
-
C#学习笔记——(30)halcon控件完整显示图片
上位机中halcon控件hWindowControl用于显示图像,但是有时会存在显示图像不完整的情况,解决如下:需要添加使图像完整显示的算子dev_set_part(0,0,Height-1,Width-1)。halcon中代码如下:dev_set_part(0,0,Height-1,Width-1)dev_display(img)dev_set_color ('blue')dev_display (SelectedRegions1)相应C#中代码如下://图片显示完整HOperator原创 2020-06-02 11:52:13 · 3132 阅读 · 2 评论 -
C#学习笔记——(29)海康威视工业相机C#例程问题汇总
参考文章或链接https://www.hikrobotics.com/service/soft.htm?type=1https://www.51halcon.com/thread-3999-1-1.htmlhttps://blog.csdn.net/kucoffee12/article/details/88884804关于using MvCamCtrl.NET在打开Sample文件夹...原创 2020-05-07 11:26:56 · 3826 阅读 · 0 评论 -
C#学习笔记——(27)用户自定义控件创建使用
自定义控件/组件的方法1、在上一次的笔记中提到了自定义控件的方法,这种方法是自定义的Windows窗体控件库,最后在/Bin文件下生成的是.dll格式文件,将其拖到要使用项目的【工具箱】里就可以直接使用了。2、本次将记录另一种自定义控件的方法,是在自己写好代码后,编译整个项目,可以直接在工具栏中看到它,没有dll文件,不需要自己添加到工具箱。从使用上来看,第一种是专门写给别人用的又不想给别人...原创 2020-03-04 15:22:38 · 1984 阅读 · 0 评论 -
C#学习笔记——(26) 自定义控件(user control)制作和使用实例
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/xiongxuanwen/article/details/2605109本文为转载文章,只用于个人学习记录。原文链接:https://blog.csdn.net/xiongxuanwen/article/details/260510...转载 2020-02-22 12:08:37 · 2376 阅读 · 1 评论 -
C#学习笔记——(25)常用类总结
常用类object类TextBox文本控件类Button按钮类CheckBox多选框类Form窗体类label标签控件类GroupBox分组类ProgressBar进度条类SerialPort串口类Timer定时器类MessageBox提示框类string字符串类Convert类型转换类Console输入输出流类Excepttion系统异常类SystemSound...原创 2020-02-19 15:42:49 · 202 阅读 · 0 评论 -
C#学习笔记——(1)C#简介及环境
由于毕设要用到C#呀,所以打算学一学,顺便记一下笔记供之后参考。学习教程链接C#简介C# 是一个现代的、通用的、面向对象的编程语言,是专为公共语言基础结构(CLI)设计的。C#成为广泛应用的专业语言的原因现代的、通用的编程语言。面向对象。面向组件。容易学习。结构化语言。它产生高效率的程序。它可以在多种计算机平台上编译。Net 框架的一部分。C# 一些重要的功能布尔...原创 2019-11-23 16:43:19 · 356 阅读 · 0 评论 -
C#学习笔记——(2)程序结构
C#程序主要组成部分命名空间声明(Namespace declaration)一个 classClass 方法Class 属性一个 Main 方法语句(Statements)& 表达式(Expressions)注释实例学习using System; /*using 关键字用于在程序中包含 System 命名空间。 一个程序一般有多个 using 语句*/namesp...原创 2019-11-23 17:13:01 · 285 阅读 · 0 评论 -
C#学习笔记——(3)基本语法(待补充)
此篇待补充,后面学习不断补充相关概念和理解。using关键字C#程序的第一条语句using System;using 关键字用于在程序中包含命名空间。一个程序可以包含多个 using 语句。class 关键字class 关键字用于声明一个类。注释注释是用于解释代码。编译器会忽略注释的条目。多行注释以 /* 开始,并以字符 */ 终止。单行注释是用 ‘//’ 符号表示。成员变量...原创 2019-11-23 17:51:23 · 115 阅读 · 0 评论 -
C#学习笔记——(4)数据类型
变量分为值类型、引用类型和指针类型值类型从类 System.ValueType 中派生的。值类型变量可以直接分配给一个值。当声明一个 int 类型时,系统分配内存来存储值。引用类型引用类型不包含存储在变量中的实际数据,但它们包含对变量的引用。换句话说,它们指的是一个内存位置。分类:object、dynamic 和 string对象(Object)类型对象(Object)类型可...原创 2019-11-23 18:19:02 · 116 阅读 · 0 评论 -
C#学习笔记——(5)面向对象的编程
类声明一个类类修饰符 class 类名{类体}关键字class、类名和类体是不可省略的类修饰符分为:访问修饰符和其他修饰符访问修饰符:public、private、internal、protected其他修饰符:abstract、sealed、static、partial类里包括字段成员和方法成员实例设计一个Circle类,属性有圆心坐标x和y,半径r。其方法为Set(int...原创 2019-12-11 18:15:19 · 332 阅读 · 0 评论 -
C#学习笔记——(6)类的一个例子
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace lei{ class Program { static void Main(string[] args) ...原创 2019-12-11 18:58:47 · 110 阅读 · 0 评论 -
C#学习笔记——(7)控制结构
选择结构using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace select{ class Program { static void Main(string[] a...原创 2019-12-12 16:36:24 · 198 阅读 · 0 评论 -
C#学习笔记——(8)数组
数组简介概念——数组是按顺序排列的一组相同类型变量的集合。数组的最小下标为0。数组是引用类型,集成.NET类库中名为System.Array的公共基类。一维数组声明和创建一维数组方法一:数组类型[] 数组名 = new 数组类型[数组长度]//创建含有5个元素的一维整型数组array1int[] array1 = new int[5];方法二:先声明一个数组名,再分配空间(...原创 2019-12-12 20:38:54 · 544 阅读 · 0 评论 -
C#学习笔记——(9)数组例题(待补充)
一维数组实现功能:随机填充一维数组,产生100个1-99之间的随机数,填充数组,数组类型是整数,大小100using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace array{ class ...原创 2019-12-12 20:52:06 · 333 阅读 · 0 评论 -
C#学习笔记——(10)方法
静态方法和静态变量静态成员用static修饰符声明的成员称为静态成员,静态成员是属于类所有,不需预先创建类的实例就能访问。静态成员访问形式类名.静态成员静态变量使用static声明的成员(域、字段)变量称为静态变量。类的所有对象共享静态变量。类的静态变量仅占有一块内存空间,且该空间是不能被撤销的。静态方法用static声明的方法称为静态方法。在静态方法中只允许访问类的静态成员...原创 2019-12-12 21:28:45 · 314 阅读 · 0 评论 -
C#学习笔记——(11)方法的参数传递
值类型被分到栈空间上。引用类型在堆里用new来分配空间,通过垃圾回收来管理,同时将分配的内存标识分配到栈里。例如int[] a = new int[100],a在栈里,100个整数空间存在堆里。方法的参数传递分为值传递和引用传递值传递不使用任何修饰符标记的参数。值参数采用值方式传递。值方式传递是指在方法调用时,系统将实参的值复制给形参变量,这时,方法中可使用或修改形参变量的值,但不会影...原创 2019-12-16 13:13:32 · 170 阅读 · 0 评论 -
C#学习笔记——(12)out参数
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication3{ class Program { static void Main(st...原创 2019-12-22 09:49:06 · 142 阅读 · 0 评论 -
C#学习笔记——(13)可选参数、命名参数和变长参数表
可选参数和命名参数using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;//说明可选参数和命名参数namespace ConsoleApplication3{ class Program { ...原创 2019-12-22 10:07:16 · 346 阅读 · 0 评论 -
C#学习笔记——(14)方法的重载
Overload (重载)方法的重载要求两个方法有一定的不同方法参数数目不同;方法拥有相同数目的参数,但参数的类型不一样;方法拥有相同数目的参数和参数类型,但是参数类型出现的先后顺序不一样;构成重载的方法与方法的返回值类型无关。例子using System;using System.Collections.Generic;using System.Linq;using Sy...原创 2019-12-22 10:23:52 · 216 阅读 · 1 评论 -
C#学习笔记——(15)方法的递归
递归即程序或方法能够自己调用自己的方法阶乘例子using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;//递归的方法求阶乘namespace ConsoleApplication3{ class Prog...原创 2019-12-22 10:42:32 · 106 阅读 · 0 评论 -
C#学习笔记——(16)类与对象
类与构造函数类中封装字段、属性和方法与类相关访问控制public、private、protected构造函数特点方法名和类名完全相同;不需要返回类型的说明;可以重载;构造函数作用在创建对象的时候,将由系统自动调用构造函数一次且仅一次,不允许自己主动调用构造函数,构造函数一般用来做一些初始化的工作。析构函数当对象被销毁时析构函数被调用,由系统自动调用,并且系统保证调用析构函数...原创 2020-01-28 16:21:39 · 250 阅读 · 0 评论 -
C#学习笔记——(17)继承
基本概念类的继承或类的派生把类按照其之间的关系组成的层次结构,称之为类的继承或类的派生。基类和派生类水果是一种基类,桃、梨、苹果是派生类…派生类可以继承基类里的属性、字段和方法,然后加上自己特殊的属性、字段和方法。派生的语法格式类修饰符 class 派生类名:基类名{新增派生类成员}访问控制问题public 都可以访问使用。private 派生类可以继承基类的priva...原创 2020-01-29 17:42:07 · 369 阅读 · 0 评论 -
C#学习笔记——(18)多态
基本概念抽象类和抽象方法声明抽象类的格式public abstract class 抽象类名{ 声明类中的各个成员}抽象方法[访问修饰符] abstract 返回值类型 方法名 ([参数列表]);如果一个类是抽象类的话不能进行实例化,只能作为继承。如果一个类里有抽象方法,则此类不能实例化。override和overloadoverride(从写)如果基类中有一个抽象...原创 2020-01-30 16:26:45 · 219 阅读 · 0 评论 -
C#学习笔记——(19)异常
为什么要进行异常处理如果没有异常处理,当出现问题时,操作系统会直接将程序终止,处理方式不太友好。因此需要更友好一些的方式来处理异常。例如如下代码:static void Main(string[] args){ var a = Convert.ToInt32(Console.ReadLine()); var b = Convert.ToInt32(Console.ReadLin...原创 2020-01-31 11:29:07 · 125 阅读 · 0 评论 -
C#学习笔记——(20)泛型和委托
泛型不同类型的值入栈操作方法一定义一个object类的数组,因为object类是所有类的祖先。class Stack{ private object[] a; public void push(object x){......}}//输入数值、字符串等都可以s.push(23);s.push("23xx");拆箱和装箱数值转换成object时,首先要将数值进行装...原创 2020-01-31 15:46:39 · 217 阅读 · 0 评论 -
C#学习笔记——(21)Windows Form编程
Windows编程概述程序的控制流程不再由事件的预定发生顺序来决定,而是由实际运行时各种实际的实际发生来触发,而事件的发生可能是随机的、不确定的,并没有预定的顺序。事件驱动的程序允许用户用各种合理的顺序来安排程序的流程,事件驱动是一种面向用户的程序设计方法,在程序设计过程中除了完成所需要的程序功能之外,更多的考虑了用户可能的各种输入(消息),并有针对性地设计相应的处理程序。事件驱动程序设计也...原创 2020-02-01 12:25:04 · 685 阅读 · 0 评论 -
C#学习笔记——(22)窗体、对话框和菜单
窗体和对话框窗体是程序的一个重要对象,也是Visual C#可视化程序设计的基础。对于用户来说,窗体的界面就是应用程序,程序的可用性完全依赖于窗体界面。不要直接修改窗体的类名Form1,可以按如下方法更改(1)打开类视图窗口,选择Form1类,然后在属性窗口更改类名,这样做的好处是visual studio会自动更改和Form1相关的资源文件的设置。(2)在解决方案资源管理器中选中Form...原创 2020-02-02 15:32:00 · 548 阅读 · 0 评论 -
C#学习笔记——(23)文件
文本文件的读写文件是记录在外部介质上的数据的集合。Visual Studio中与文件操作有关的类在命名空间System.IO中,因此在程序的开头需要引入这个命名空间。读写文件引入名字空间using System.IO;写文件用StreamWriter方法StreamWriter swFile = new StreamWriter("C:\\MyFile.txt");St...原创 2020-02-03 12:36:49 · 364 阅读 · 0 评论 -
C#学习笔记——(24).Net与数据结构
数据与数据结构数据结构包括三方面数据的逻辑结构数据的存储结构数据的运算(即数据的处理操作)数据的存储结构顺序存储结构链式存储结构—将存放每个数据元素的结点分为两部分,一部分存放数据元素(数据域),另一部分存放指示存储地址的指针(指针域)索引存储结构散列存储结构线性表线性表是一个线性结构,它是一个含有n≥0个结点的有限序列,对于其中的结点,有且仅有一个开始结点(第一个结点...原创 2020-02-04 14:38:25 · 336 阅读 · 0 评论