Delphi 2007 学习笔记(1)

由于开发桌面程序的需要,准备学习一个新的开发工具,理所当然地想起了"聪明的程序员"所使用的Delphi.

安装之后,用惯了VS+MSDN的我,对着Delphi 2007精简的文档,立刻就明白了为什么Borland会被MS打败: 在文档里甚至找不到Pascal标准库Writeln的文档! 关于IO, 也只有一篇文章提到了几个函数名和简介,参数信息都没有.没错,在标准文档里你再也找不到其它相关的信息了,除了这几个函数名.用惯了VS的人,你可以想一下如果连System.Console.WriteLine()这样的函数都没有文档,你是什么感觉...

好吧,不发牢骚了,现在创建第一个控制台项目,打印Hello world.
第一个发现是,Delphi里用单引号而不是双引号来标注字符串: Writeln("Hello, world");

第二个发现是,我需要到处寻找类似Console.ReadLine()的功能--文档里是不会记录这么一个小问题的,CodeGear可是为企业级开发者做IDE的.当然,我猜到了与Writeln相对应,这个函数应该叫Readln,但是我猜不到它需要什么形式的参数,谁知道它是不是像C里的scanf那样要求一个指针啊什么的?试了一下,IDE只告诉我写错了,但是却没能告诉我错在哪.几分钟后,在电子书"Inside Delphi 2006"里搜索Readln,看到了对它的一次使用,就是光秃秃的一个"Readln;",不过正好适合我停下程序观看输出窗口的需要.

第三个发现是IDE的重构功能非常弱.比如"Extact Method",它就直接把你选中的代码扔到一个新的procedure里,用它的名字替换原处的代码就算了事,对变量的上下文引用关系一点也不做处理.天啊,这样你也敢自称"Refactor"?

不爽的地方还有一个:编辑器不会自动格式化代码--我用VS时可是没事就按个Ctrl+K,Ctrl+D的人,这一点确实很让人郁闷.

可能今天我没试用Delphi的强项--桌面RAD开发,所以才会发现这么多的不爽吧.哪位有经验的介绍一下在桌面开发上Delphi和WinForms哪个更方便?

发完了牢骚,还是记录一下今天学到的要点吧:
  • 不区分大小写;
  • 赋值操作符是:=,不是=;
  • 变量定义和很早以前的C一样,只能放在块顶端;
  • 子过程分两种:有返回值的叫函数(function),没返回值的叫过程(procedure);
  • 函数不用return语句提供返回值,而是给Result赋值.

posted on   deerchao  阅读(4556)  评论(16编辑  收藏  举报

(评论功能已被禁用)
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
< 2007年9月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 1 2 3 4 5 6

统计

点击右上角即可分享
微信分享提示