定义了memorystring变量Fms,语句Fms.position:=0;的作用是什么?为什么要这样设置,不设置会有怎样的结果?

解决方案 »

  1.   

    不好意思上面写错了,Memorystream类型
     那这个Move(Fms.Memory^, temp_p^, 1024);语句又有什么作用呢?
      

  2.   


    1、MemoryStream.Position: 指定当前流的位置;
    2、为什么设置position:=0;
       例如:你读取了一个二进制文本并且写入了内存流,如果另外一个内存流需要读取这个内存流,则一般都需要这样设置 position:=0,也就是从流的开始位置读取,如果你需要获取一个流的完整的拷贝,就需要设置从0到MemoryStream.Size,除非你只需要内存流的一部分。3、Move(Fms.Memory^, temp_p^, 1024);
      这个你可以看一下函数的声明就知道了:procedure Move(const Source; var Dest; Count: Integer); 
      作用就是从Source移动到Dest,移动1024个元素。