ReadProjectToTreeView(var trvProject:TTreeView)与ReadProjectToTreeView(trvProject:TTreeView)的效果一样吗
解决方案 »
- 如何 在下拉框中显示新增、编辑、置空等按钮?
- 本人目前接到一个防伪项目,希望做过的兄弟给点意见.
- 有人想做delphi的outsourcing吗?在线等, 2个小时内有效
- DBGrideh 能显示MEMO类型的数据 吗?
- 怎样将秒数转换为日期时间
- 如何实现QQ的自动隐蔵到屏幕边上?
- 小妹又有难!
- delphi中有沒有像vb中的new collection的類型
- 用TADOConnection,TADOQUERY,很慢啊很慢。为什么?
- 关于返回TStrings类型的怪问题。急救!!!
- 我如何直接使用ODBC避开BDE?
- paradox 不知道什么版本,只知道个密码: intcard 怎么把 paradox的数据库导入到sql server 中啊。
begin
i:=100;
end;
procedure bbb(i:integer);
begin
i:=100;
end;调用:
procedure ccc;
var x:integer;
begin
x:=50;
bbb(x);//这和bbb(50)一样,现在x=50
aaa(x);//现在x=100
end;
那么加var 与不加 var 都是一样的
加了 var 是引用传递,相当于指针,在函数/过程内部修改了参数,退出函数后也会改变。
没加 var 是值传递,只在函数/过程内部使用,退出函数后不改变参数的值。1:在 ReadProjectToTreeView(..) 中
如果对 trvProject 访问、增加、修改节点...这是一样的。 2:在 ReadProjectToTreeView(..) 中
将 trvProject 指向了另外一个指针,比如 trvProject := nil;
这是不同的,
A 对于ReadProjectToTreeView(var trvProject: TTreeView)
函数调用完了之后 trvProject 变了,trvProject = nil;
B 对于ReadProjectToTreeView(trvProject: TTreeView)
函数调用完了之后 trvProject 没变,还是原来的。