我试图修改有人在远程过去的VB6中编写的程序,并且遇到了下面这行,以及许多类似的程序。我的问题是,在语法上,这是什么" Get"线看起来像或者可能做什么?
Get #3, StartByte + Offset, StudentScrBytes
在程序中,它始终跟着3个以逗号分隔的项目,除了一个例外,第一项是以#开头的数字。第二个看起来始终解析为数字,第三个看起来是单个变量。
我相当确定我已经知道前面带#的数字是一个文件引用 - 第一次出现Get,而不是#3或#10或#whatever,它有一个变量&# 34; TEMPFILE"相反,初始化为FreeFile().
TempFile = FreeFile()
Open "c:\folerName.dir" For Binary Shared As TempFile
我在VB6中获得的唯一内容似乎与OOP和getter / setter有关。也许我错了,但我真的不认为这里发生了什么,而我所拥有的只是模糊的猜测是什么。
这里是该线的功能。两个参数都是整数。
Function StudentScr$(Record, Contest)
Dim StudentScrBytes As String * 4
StartByte = (Record - 1) * LengthOfStudentRecord
If Contest = 1 Then Offset = 77
If Contest = 2 Then Offset = 85
If Contest = 3 Then Offset = 94
If Contest = 4 Then Offset = 102
If Contest = 5 Then Offset = 110
If Contest = 6 Then Offset = 118
If Contest = 7 Then Offset = 126
If Contest = 8 Then Offset = 134
Get #3, StartByte + Offset, StudentScrBytes
StudentScr$ = StudentScrBytes
End Function
我认为Get会从指定的文件中获取内容,除非我无法告诉文件是如何(或者是否)指定的。
答案 0 :(得分:5)
查看原始的MS VB6文档:
https://msdn.microsoft.com/en-us/library/aa243376(v=vs.60).aspx
您可能也对它的对手Put:
感兴趣https://msdn.microsoft.com/en-us/library/aa266212(v=vs.60).aspx
提示:在搜索旧版VB语句时,在Google搜索中包含Visual Studio 6.0的“vs.60”,并将搜索限制在MS网站上。 MS在官方链接中有这个术语,所以你不能错过它。这次搜索:
vb6 vs.60 get put site:microsoft.com
确实将Get和Put作为我机器上的两个第一个Google答案。