当前位置: 代码迷 >> 综合
 解决方案列表
  • [综合] 内存管理(11)——深拷贝浅拷贝

    1、暂时不考虑用IO进行深拷贝,全手工。 2、浅层拷贝,就是只拷贝类的第一层成员,而且如果成员是引用类型,则引用同一份。 3、深层拷贝,把对象引用的所有直接、间接的对象都拷贝一份。完全的一份拷贝。如果实现深层拷贝?需要耐心或者使用IO流。 4、MemberwiseClone()是protected方...

    91
    热度
  • [综合] 委托和事件(15)——简单回顾委托

    1、什么是委托? 通俗:就是一个能存放符合某种格式(方法签名)的方法指针的清单。 2、委托创建方式 准备一个方法:stringHelloU(stringuName){//方法代码} 声明委托:delegate返回值类型委托类型名(参数) 例子:delegatestringDGSayHi(string...

    77
    热度
  • [综合] I/O(2)——文件流,FileStream,字符串和字节数组转换

    1、文件流:文件路径、文件操作。 FileStream 2、FileStream对象表示在磁盘或网络路径上指向文件的流。 3、使用FileStream类对文件系统上的文件进行读取、写入、打开和关闭操作。 4、FileStream对输入输出进行缓冲,从而提高性能。 5、为什么不用File.ReadAl...

    124
    热度
  • [综合] Socket(2)——SOCKET网络编程:Socket相关概念

    1、socket的英文原义是“孔”或“插座”。作为进程通信机制,取后一种意思。通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄。(其实就是两个程序通信用的)。 2、socket非常类似于电话插座。以一个电话网为例。电话的通话双方相当于相互通信的2个程序,电话号码就是IP地址。任何用户...

    45
    热度
  • [综合] Socket(4)——Socket的通讯过程

    1、服务器端: 申请一个socket。 绑定到一个IP地址和一个端口上。 开启侦听,等待接授连接。 2、客户端: 申请一个socket。 连接服务器(指明IP地址和端口号)。 3、服务器端接到连接请求后,产生一个新的socket(端口大于1024)与客户端建立连接并进行通讯,原侦听socke...

    5
    热度
  • [综合] Socket(5)——Socket方法

    ------------------相关类-------------------------- 1、IPAddress类:包含了一个IP地址。 2、IPEndPoint类:包含了一对IP地址和端口号。 -------------------方法们------------------------- 3...

    49
    热度
  • [综合] Socket(7)——Socket扩展

    1、如果实现传送文件,接收数据是文件还是文字? 2、设计协议: 把要传递的字节数组前面都加上一个字节做为标识。0:表示文字,1:表示文件。即: 文字:0+文字(字节数组表示)。 文件:1+文件的二进制信息。

    34
    热度
  • [综合] 线程和进程(3)——安全调用线程的步骤

    1.声明方法。2.声明委托类型。3.创建委托对象。4.启动线程。5.在线程调用的方法里通过Control的Invoke方法执行委托。 示例: publicForm1(){InitializeComponent();//TextBox.CheckForIllegalCrossThreadCalls=f...

    52
    热度
  • [综合] 【C#】面向过程(1)——第一个C#程序

    创建第一个控制台程序并且调试运行。 为什么要从控制台程序开始?不要把精力放到表现层,而是把精力放到写代码上。无论控制台还是Winform还是ASP.Net最难的是写代码,而不是拖控件。 唯一需要学的三条控制台指令:Console.WriteLine:打印输出、Console.ReadLine:从控制...

    49
    热度
  • [综合] IDE(14)——VS系列(14)——【C#】VS开发环境介绍

    1、解决方案管理器:解决方案、工程、文件。 2、拖动视图、关闭/打开视图、重置窗口布局。 3、C#源文件一般以cs结尾。即使没有VS也能用记事本打开。 4、C#程序的入口是Main函数,在Main中写代码就行,暂时不用关心其他部分是什么意思。 5、错误列表。见到编译错误不用慌。错误排除演示。常见错误...

    89
    热度
  • [综合] 【C#】面向过程(2)——C#语法

    1、从上到下一条条的依次执行。过去的就让他过去吧,不会返回头执行:inti1=3;inti2=5;inti3=i1+i2;i1=9;。 2、大小写敏感。String和string都行是另外一个问题。命名两个变量或函数时,名字一样只是大小写不一样而已也不行。但是在引用时大小写一定要一致。 3、函数参数...

    92
    热度
  • [综合] 【C#】面向过程(3)——变量

    1、把变量看成放数据的容器。 2、定义变量的方式:类型变量名;inti3;变量只是容器,必须放进去值才有意义,否则就是一个“杯具”。 3、strings1=null和strings1不一样。 4、变量的类型:不同类型的容器放不同的东西。不能在int类型的变量中放字符串。 5、变量不能放和变量类型不兼...

    15
    热度
  • [综合] 【C#】面向过程(4)——变量的命名

    1、命名规则:第一个字符必须是字母或者下划线(_),其后的字符可以是任意个数字、字母、下划线。不能全部使用C#的关键字,比如class、namespace、new、void等。判断方式:VS中亮蓝色的就是关键字。看颜色分辨是否是关键字。 2、这也是类、函数等的命名规则。还可以使用中文变量名(类名、函...

    57
    热度
  • [综合] 【C#】面向过程(5)——常用基本数据类型

    1、string、int、char、boollong等。bool的取值:true、false。int的表示范围。long有多long 2、为什么输出"要用转义符"\"",因为编译器默认是遇到"开始字符串,再遇到"是结束字符串,但是如果遇到前面有\的"就不把它当成有字符串起始意义的"。\表示不要把\后...

    58
    热度
  • [综合] 【C#】面向过程(6)——运算符、表达式、赋值

    1、+、-、*(乘)、/(除)、%(求余) 2、+可以用作字符串连接,其他不可以。 3、++(自增)、--(自减) 4、运算符优先级:i1+i2*i3、(i1+i2)*i3。不要变态,括号是王道。 5、变量可以和字面量混合运算。 赋值 6、赋值运算符=,让左边变量的值等于右边的计算结果。这就能解释令...

    70
    热度
  • [综合] 【C#】面向过程(7)——布尔运算

    1、相等判断:==,不要和=混淆。WriteLine("{0}",i==1);WriteLine("{0}",i=1);的区别。 Console.WriteLine("{0}",i=1);//C#中赋值表达式也有值,它的值表示为赋值后变量的值 2、不等判断:!= 3、大小比较:<、>、&...

    64
    热度
  • [综合] 【C#】面向过程(11)——循环的中断

    1、break:立即终止整个循环。 2、continue:立即终止当前循环步骤,进行下一次循环步骤。 3、return

    18
    热度
  • [综合] 【C#】面向过程(13)——枚举

    1、确定数量、确定值的几个取值:东西南北、男女、上中下。 enumGender{male,female} enumQQStatus{online,offline,hidden} 2、枚举的用法,QQStatusstatus=QQStatus.online; 3、和用字符串比起来,用枚举的好处就是限定...

    59
    热度
  • [综合] 【C#】面向过程(14)——数组

    1、保存多个值。几乎任意类型都可以声明数组。 2、int[]nums={5,3,8} 3、int[]nums=newint[3] 4、int[]nums=newint[3]{5,3,8}//个数和声明数必须一致 5、int[]nums=newint[5]{5,3,8}//错误 6、使用索引器访问指定...

    37
    热度
  • [综合] 【C#】面向过程(15)——集合(8)——数组——foreach循环

    foreach循环: string[]names={"tom","jerry","lily"}; foreach(stringnameinnames) {Console.WriteLine("我的名字{0}",name); } 1、和for的区别:for可以不逐个遍历,比如每隔一个遍历一个,或者可以...

    98
    热度