Delphi 方法

不是原创,只是看到好的内容复制了保存下来,留着学习。

特殊符号;stdCall和external;取整函数;

特殊符号: ^ , @, #

  ^  : 指针

 @ : 取址
  # : 十进制符

@ : 取址

^   : 符号 ^ 有两种用途,当它出现在类型标识符之前,如^typeName,表示一个类型,该类型表示指向typeName类型变量的指针;当它出现在指针变量之后,如pointer^,该符号对指针解除参照,也就是说,返回存储在内存地址(该地址保存在指针中)的值指针,指向的数据.

var
  I: Integer;
  PI: ^Integer; 
begin
  I := 10
  PI := @I;;
  PI^ := 20;
  I := PI^;
end;

#:ASCII码值表示符;

const
tab_key=#9;//TAB键的ASCII值

--------------------------------------------------------------------------------------------------------------------------------------

stdCall意义:  原文链接 https://blog.csdn.net/delphi308/article/details/23296521

1、此代码所在单元是个库,可被别的应用来调用,像SysUtils、DateUtils、Classes等单元一样,都是为将来的无穷无尽的应用提供服务的。
2、此代码还可能出现在library的工程中,即动态链接库(.dll文件),最后会有export HInitRSCCTL的语句,这样,别的应用程序就能动态链接该库,并调用该函数。相比而言,1中所述为静态链接。
DLL调用协定,是一个参数传递标准。大家都按这个协定来使用DLL参数就不会出现出错。

stdcall是对这个函数的调用方式,具体描述了参数传递顺序是从右到左,在例程内清除参数堆栈。C语言和pascall刚好相反

external:表示函数不在本单元中实现,而是引用了外部dll中的函数

 ----------------------------------------------------------------------------------------------------------------------------------------

取整函数: round、Trunc、ceil、floor

链接:https://blog.csdn.net/zang141588761/article/details/51392493/

1.round(四舍五入留双)

按照银行家算法,当舍或入位等于五时,就要看前面一位是什么,根据奇进偶不进,它总是返回一个偶数值。

i := Round(1.5);   //等于2
j := Round(2.5);   //等于2

 2.trunc(取得x的整数部分)

i := trunc(-123.55);  // -123

3、ceil(取得大于等于x的最小整数)

i := ceil(123.56) ;   //124

4、floor(取得小于等于x的最大整数)

i := floor(123.56);   //123 

 注:floor 和ceil是math unit里的函数,使用前要先 Uses Math

----------------------------------------------------------------------------------------------------------------------------------

TreeView1.Items.Add与TreeView.Items.AddObject\\FieldValues与Fieldbyname
请问TreeView控件中TreeView1.Items.Add与TreeView.Items.AddObject有什么不同,各用在什么地方?请问FieldValues与Fieldbyname(.AsInteger或AsString)的两者有什么不同?有什么情况只可用其一?


Add简单添加一个节点, 设置文本属性
AddObject可以将结点的Data属性与一个指针关联起来
FieldValues兼容所有的数据类型为Variant
AsInteger或者AsString实际是就是转换

原文地址:https://www.cnblogs.com/hjdgz/p/11684427.html