摘要:
1.字符串的不可变性不断的给字符串变量符新值,就会不断的重新开辟新的空间,保存在栈上的地址指向新的空间,原来的空间则被悬空保留着,直到程序结束是,GC才将所有没有被指向的空间释放掉。但GC不能释放流(FileStream) 2.字符串的方法 string.IsNullOrEmpty(s1)s1.To 阅读全文
摘要:
halcon检测工具安装步骤:1.找到halcon安装目录->misc->HALCON_Variable_Inspect.vsix然后点击安装2.安装完成后在c#菜单栏中,工具,能找到检测工具H。 阅读全文
摘要:
什么是面向对象? 答:面向对象和面向过程一样,是一种分析问题的方式。(增强了程序的可扩展性) 什么是类?什么是对象?类和对象的区别? 答:类是模具,创建对象的模具,抽象的 1)类是一种数据类型,用户自定义的数据类型 2)类组成:字段、属性、方法、构造函数等。 3)对象是具体的,是类的具体实例。对象具 阅读全文
摘要:
1.绝对路径,直接添加文件的真实路径。相对路径的使用,鼠标点击右键,在文件资源管理器中,在bin下拉目录下的debug,存放文件。在程序中直接使用文件名,即可使用文件的相对路径。2.使用using(FileStream ),程序会自动关闭文件流,释放资源。 3.多态的优点减少代码量,避免代码冗余;屏 阅读全文
摘要:
注释符的作用 1.注销 2.解释2.c#的三种注释符 1.单行注释// 2.多行注释/**/ 3.文档注释 ///对类和函数进行注释 3.vs中常用的快捷键Ctrl+k+d:快速对齐代码ctrl+z 撤销Ctrl+s:保存Ctrl+j 快速弹出智能提示 shift+end、shift+home:// 阅读全文
摘要:
.c#中的转义符 转义符指的是“\”+特殊的字符组成特殊的字符; \n 换行 只能在控制台中起作用,要实现window的换行,\r\n实现。\"英文半角的双引号 \t等价与空格 \b表示一个退格键 在行首尾不起作用 \\表示一个\@"F:\a\b\c" :@使得字符串按照原格式输出;取消\在字符串中 阅读全文
摘要:
8.继承我们可能会在一些类中,写一些重复的成员,我们可以将这些重复的成员,单独的封装到一个类中,作为这些类的父类。 9.子类继承了父类,那么子类从父类哪里继承了什么? 子类继承了父类,那么子类从父类哪里继承了什么? 10.问题:子类有没有继承父类的构造函数?答:子类没有继承父类的构造函数,但是,子类 阅读全文
摘要:
4.字符串(引用类型)1)字符串的不变性当你给一个字符串重新赋值之后,老值并没有被销毁,而是重新开辟一块内存空间存储新值。比如:string person = “张三”; person = “王五”;给张三在堆上分配的内存空间没有被销毁,重新在堆上给王五分配了一块内存空间,并把地址赋给person。 阅读全文
摘要:
3.值类型和引用类型区别:1)值类型和引用类型在内存上存储的地方不一样2)在传递值类型和传递引用类型的时候,传递的方式不一样。值类型我们称之为值传递,引用类型我们称之为引用传递。 值类型:int、double、bool、char、decimal、struct、enum引用类型:string、自定义类 阅读全文
摘要:
1.变量的使用规则先声明,再赋值,再使用; 2.常量 常量不能被重新赋值 语法:const int number = 10; 3.枚举枚举不能声明在函数的内部,应该声明在命名空间的内部,类的外部。 枚举的本质就是一个变量。语法:[public] enum 枚举名 {值1 ,值2,、、、、、、 }枚举 阅读全文
摘要:
1.在main()中调用test();如果被调用者想要得到调用者的值,1)传递参数2)使用静态字段来模拟全局变量。 如果调用者想要得到被调用者的值1)返回值 2.out参数的使用/// <summary> /// 判断用户输入信息的对错,并输出错误信息 /// </summary> /// <par 阅读全文
摘要:
1.类中包含:字段;属性和方法。 2.面向对象意在:写出通用的代码,屏蔽差异对象必须是看得见,摸得着的具体物体。--没有具体,则不能成为对象万物皆对象 我们把具有相同属性和相同方法的对象抽象为类。对象是根据类创建出来的实例类是不占内存的,对象要占内存 3.属性的作用就是保护字段,对字段的赋值和取值进 阅读全文
摘要:
1、异常捕获我们在程序中经常会遇到各种各样的异常,如果想要您的程序变得坚强一些,在您的代码中应该经常性的使用try-catch来进行捕获异常。 语法: try { 可能或出现异常的代码 } //try和catch之间不能有任何代码 catch { 出现异常后要执行的代码 }执行过程:如果try中的代 阅读全文
摘要:
1.实现保留小数位数将double类型的数转换成string,然后再然string类型的数转换成double,实现小数位数的保留。 //实现对变长数组求平均值后保留两位小数double avg = 0; CountAvg( out avg , 1,2,7); //将double类型的数转换成stri 阅读全文
摘要:
1.里氏转换1)子类可以赋值个父类2)如果父类中装的是子类对象,那么可以将这个父类强制转换为子类对象。 3)子类对象可以调用父类的成员,但父类的对象不能调用子类的成员。 //子类对象可以赋给父类 person p = new student(); //父类中包含子类成员,可以将父类强制转换成子类。 阅读全文