以前学过c, 对于指针参数与非指针参数分得特别清楚, 可是现在在delphi中调用api时感觉有些迷惑.
例如: api函数: BOOL SetSystemTime( CONST SYSTEMTIME *lpSystemTime);
该函数的参数应该是个指针类型, 可是我在delphi中调用时传递非指针参数时却能正常使用:
var MyTime:TsystemTime;
...
MyTime.wYear:=2007;
MyTime.wMonth:=09;
MyTime.wDay:=01;
SetSystemtime(MyTime);
...
MyTime不是指针啊. 这是为什么? 是不是我的理解有误? 多谢各位
例如: api函数: BOOL SetSystemTime( CONST SYSTEMTIME *lpSystemTime);
该函数的参数应该是个指针类型, 可是我在delphi中调用时传递非指针参数时却能正常使用:
var MyTime:TsystemTime;
...
MyTime.wYear:=2007;
MyTime.wMonth:=09;
MyTime.wDay:=01;
SetSystemtime(MyTime);
...
MyTime不是指针啊. 这是为什么? 是不是我的理解有误? 多谢各位
它都是通过指针来传递的。
>它都是通过指针来传递的。这儿说的类是不是不限于class定义的? 是指结构类型吗? 因为Tsystemtime不是类啊