- 博客(159)
- 收藏
- 关注
原创 Go中参数传递
Go中所有的传参都是值传递一般类型(如 int、float、bool 等)和结构体(struct)默认是按值传递的,函数接收到的是副本指针类型可以用来实现按引用传递,函数接收到的是指向原始数据的指针。引用类型(如指针、切片、map、通道、接口和函数)虽然按值传递,但它们的底层实现是引用类型,因此可以在函数内部修改原始数据。一点点笔记,以便以后翻阅。
2024-05-16 22:08:27 462
原创 Delphi 快速排序
快速排序思路:> 1、快速排序是一种递归的写法> 2、其中需要在待排序的数组中找到一个 **基准值**(可以是待排序数组中任意一个数,一般为了方便就取数组从左往右数的第一个数)> 3、根据选定的 **基准值** 对数组中的其他数进行遍历比较,小于等于基准数的放在基准数的左边,大于基准数的放在基准数的右边> 4、这里的遍历不是从头到尾的遍历,而是用两个变量,分别代表**从左往右** 和 **从右往左** 的数组下标,依次往数组中心位置移动> 5、先**向前**(从右往左)移动找到 **小于等于**
2022-07-31 14:44:24 997
原创 Delphi 之 FileAge【文件最新的修改时间】
RAD Studio 10.2.3 测试√procedure TForm1.Button_27Click(Sender: TObject);var i: Integer;begin i := FileAge('D:\AAA_A_Test\Log\test.txt'); Memo_1.Lines.Add('i = ' + DateTimeToStr(FileDateToDateTime(i))); i := FileAge('D:\AAA_A_Test\Log\test2.txt')
2022-02-24 11:56:59 701
原创 位移运算【左移、右移】
左移:【Delphi 对应符号 shl】【C++ 对应符号 <<】举个栗子:i = 100;将 i 左移 4位【Delphi 对应 i shl 4】【C++ 对应 (i << 4)】方法一:100 转换2进制为 1100100将 i 左移4位就是需要将转换为二进制后的数后面增加 4 个0即 11001000000在将这个二进制数转换为十进制结果 = 1600方法二:将 i 乘以 2 的需要位移数的次方结果 = i * 2^4 = 100 * 2.
2021-11-29 12:17:07 1142 2
原创 Delphi 工厂模式
RAD Studio 10.2.3 测试√运行结果:使用方法:procedure TDesignPattern.Button_FactoryPatternClick(Sender: TObject);var mBigBoss: TBigBoss; mFactory: IFactoryMgr;begin mBigBoss := TBigBoss.Create; mFactory := mBigBoss.GetFactory('小米手机'); mFactory.Make;
2021-11-09 11:52:25 481
原创 Delphi 观察者模式
RAD Studio 10.2.3 测试√运行结果:使用方法:procedure TDesignPattern.Button_ObserverPatternClick(Sender: TObject);var mObj001: TObserverObject_001; mObj002: TObserverObject_002;begin // 被观察者001进行创建 mObj001 := TObserverObject_001.Create; Memo_Log.Lines
2021-11-04 15:36:17 286 1
原创 Delphi ClientDataSet.Filter 模糊查询
RAD Studio 10.2.3 测试√如果不清楚 ClientDataSet 怎么给数据的可以参考 :Delphi ClientDataSet + DataSource在 DBGrid 中展示数据提示:字段1:这是数据中的一个字段,进行筛选的就是这一列中的值Edit_1.Text:这个就是模糊查询的值begin with ClientDataSet_1 do begin// Close;// Filter := '字段1=''' + '234' + '''
2021-10-27 18:08:44 1401
原创 Delphi 获取计算机名
RAD Studio 10.2.3 测试√procedure TForm_Tips.Button_GetComputerNameClick(Sender: TObject); {取得计算机名} function ComputerName: string; var CNameBuffer: PChar; fl_loaded: Boolean; CLen: ^DWord; begin GetMem(CNameBuffer, 255); New(CLen
2021-10-24 22:11:58 645
原创 Delphi 将方法以参数的形式传递
RAD Studio 10.2.3 测试√结果图:代码:procedure TForm_Tips.Button_ParamIsFuncClick(Sender: TObject);type // 需要先声明一个方法的类型 TFuncType = function(ANum: Integer): Integer; function Func01(n: Integer): Integer; begin Result := n + 1; end; function
2021-10-19 10:58:07 213
原创 Delphi 当前时间添加指定秒后的时间
RAD Studio 10.2.3 测试√procedure TForm_Tips.Button_IncSecondClick(Sender: TObject);var mDateTime: TDateTime;begin mDateTime := Now; Memo_Log.Lines.Add('当前时间:' + DateTimeToStr(mDateTime)); mDateTime := IncSecond(mDateTime, 600); Memo_Log.Lines.
2021-09-29 15:18:49 769
原创 Delphi 写XML文件
RAD Studio 10.2.3 测试√// uses Xml.XMLDoc, Xml.XMLIntfprocedure TForm_Tips.Button_WriteXMLFileClick(Sender: TObject);var mFileName: string; mDocument: IXMLDocument; mMainNode: IXMLNode; mNode, mTmpNode: IXMLNode;begin mFileName := ExtractFile
2021-09-09 11:28:16 588
原创 Delphi 读XML文件
RAD Studio 10.2.3 测试√示例:<?xml version="1.0" encoding="UTF-8"?><Persons> <test>测试内容</test> <Person> <Name>小印01</Name> <Age>22</Age> <Sex>男</Sex> </Person> <
2021-09-08 18:37:36 1766
原创 Delphi 金额转大写
RAD Studio 10.2.3 测试√使用实例procedure TForm_Tips.Button_MoneyConvertClick(Sender: TObject);var mMoneyNum: Real;begin mMoneyNum := 00000000; // 零元整 Memo_Log.Lines.Add(MoneyConvert(mMoneyNum)); mMoneyNum := 00100053; // 壹拾万零伍拾叁元整 Mem
2021-09-07 17:27:32 666
原创 Delphi 文件操作 AssignFile()
RAD Studio 10.2.3 测试√procedure TForm_Tips.Button_AssignFileClick(Sender: TObject);var FileName: string; i: Integer; Str: string;begin FileName := ExtractFileDir(ParamStr(0)) + '\Test.csv'; // 注意 DataFile 不能再方法中进行声明 // 将 FileName 文件与变量 DataF
2021-08-31 16:38:56 1920
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人