我对用Delphi编程的Delphi IDE非常满意.
但我听说过Lazarus编程环境,我也听说有些Delphi程序员使用它而不是Delphi IDE.
Lazarus相对于Delphi IDE有什么优势,以及Delphi程序员为什么或者应该切换到它?
答案给我留下了比以前更多的问题.关于Lazarus是否能够或不能用作开发Delphi代码的编辑器似乎存在一些分歧.我想我认为你可以把所有内容留在Delphi中,只需更改IDE.Lazarus Wiki的Lazarus for Delphi用户部分说:
转换Delphi项目时要做的第一件事
打开Lazarus之后,你应该转到Tools,然后转换Delphi项目到Lazarus项目.这不会为你做任何事情,但仍然会带给你许多方面.请注意,Lazarus IDE的转换工具通常是单向转换.如果您需要保留Delphi兼容性,以便可以使用Delphi和Lazarus编译项目,请考虑使用XDev Toolkit转换文件.
因为Lazarus是免费的并不是转换的理由,但是不会因为切换你的物理$而惩罚你.(你仍然需要投入时间来转换和学习.时间= $).
关于为什么有人可能会从Delphi切换到Lazarus的答案,我的理解结论很明显:显然它必须提供Delphi目前无法提供的东西.目前,这是多平台支持,可能还有64位支持.Delphi曾经有过Kylix,但不支持Mac.
但是,随着Embarcadero很快就承诺了64位和64位,你已经回答了我的问题,告诉我没有理由(至少对我来说)切换.
我有一些存储在Integer被叫中的数字mode,但我需要在一个中使用它们TProcess.为此,我需要将其转换Integer为a String,因为如果我不这样做,我得到错误:
不兼容的类型:得到"LongInt"预期"AnsiString"
然后我想知道如何将a转换Integer为a String?
我是一个从8岁开始编程的青少年,所以我知道我做了什么.我想看看Delphi Windows开发.
问题在于,Embarcadero的Delphi非常昂贵,我负担不起.
我想知道拉撒路是否是一个很好的选择,现在是学习和爱好,但在几年内工作.
如果我现在学习拉撒路,我也会认识德尔福吗?我需要先学习Pascal吗?任何好的拉撒路书籍?如果我从德尔福书中学习拉撒路,那没关系?
谢谢.
我很快就会发布一个测试版应用程序,它可以选择在Python上创建自定义集成脚本.
该应用程序将针对Mac OS X和Windows,我的问题是Windows通常不存在Python.
我的实际aproach默默运行Python 2.6安装.但是,我遇到默认情况下未激活的问题,并且在使用命令行选项时未设置路径.而且我担心如果之前安装了Python并且我升级到新版本,这可能会破坏别的东西......
所以,我想知道如何干净利落地完成这项工作.如果我复制整个Python 2.6目录,并将其放在我的应用程序的子目录中并安装所有内容,是否可以?或者使用virtualenv可以运行不同版本的Python(如果已经在机器中安装了Python?).
我在使用DLL嵌入Python之前也玩了,发现它很容易,但我失去了调试的能力,所以我切换到命令行插件.
我从命令行执行插件并读取STDOUT和STDERR输出.该应用程序是用Delphi/Lazarus制作的.我安装了其他模块,如JSON和RPC客户端,Win32com,ORM等.我使用bitrock创建安装程序.
更新:最终用户是小型企业所有者,Python脚本由开发人员制作.我想避免部署中的任何额外步骤,因此我想要一个完全集成的设置.
我刚下载了Xcode(5.0)的最新版本,需要在Lazarus上开发一些Pascal代码.但是,安装需要我使用命令行工具,这些工具在下载时会出现问题.当我单击安装时,程序向我发送此错误消息:"无法安装'命令行收费'发生未知错误.请稍后再试."
我也尝试过使用其他IDE,比如轻量级,但它们都需要Free Pascal,这是需要命令行工具的工具.
有谁知道问题是什么?
提前致谢 :)
我需要用Pascal/Delphi/Lazarus编写的逆透视变换.见下图:

我想我需要遍历目标像素,然后计算源图像中的相应位置(以避免舍入错误等问题).
function redraw_3d_to_2d(sourcebitmap:tbitmap, sourceaspect:extended, point_a, point_b, point_c, point_d:tpoint, megapixelcount:integer):tbitmap;
var
destinationbitmap:tbitmap;
x,y,sx,sy:integer;
begin
destinationbitmap:=tbitmap.create;
destinationbitmap.width=megapixelcount*sourceaspect*???; // I dont how to calculate this
destinationbitmap.height=megapixelcount*sourceaspect*???; // I dont how to calculate this
for x:=0 to destinationbitmap.width-1 do
for y:=0 to destinationbitmap.height-1 do
begin
sx:=??;
sy:=??;
destinationbitmap.canvas.pixels[x,y]=sourcebitmap.canvas.pixels[sx,sy];
end;
result:=destinationbitmap;
end;
Run Code Online (Sandbox Code Playgroud)
我需要真正的公式......所以OpenGL解决方案并不理想......
首先,我看到了关于这两个的一些话题,但不是我的答案.
我在GNU/Linux上寻找一个好的FPC(Free Pascal Compiler)IDE.
有一些IDE像Lazarus和CodeTyphon.我需要建议选择其中之一.
我曾尝试过Lazarus,但所有的窗户都是分开的.它看起来很乱,没有趣味.
我想知道这两者有什么区别?
我想知道每个的优点/缺点.谢谢
我需要从字符串中提取数字并将它们放入列表中,但是有一些规则,例如识别提取的数字是整数还是浮点数.
这项任务听起来很简单,但随着时间的推移,我发现自己越来越困惑,并且可以真正做到一些指导.
以下面的测试字符串为例:
There are test values: P7 45.826.53.91.7, .5, 66.. 4 and 5.40.3.
Run Code Online (Sandbox Code Playgroud)
解析字符串时要遵循的规则如下:
数字不能以字母开头.
如果找到一个数字并且后面没有小数点,则该数字为整数.
如果它发现了一些和被后跟一个小数点然后数为浮点数,例如5.
〜如果更多数字跟随小数点,那么数字仍然是一个浮点数,例如5.40
〜进一步发现小数点应该分解数字,例如5.40.3变为(5.40 Float)和(3 Float)
如果一个字母例如在小数点后面,例如3.H然后仍然3.作为Float 添加到列表中(即使从技术上讲它是无效的)
例1
为了使这一点更清晰,在上面引用所需输出的测试字符串应该如下:
从上图中可以看出,浅蓝色表示浮点数,浅红色表示单个整数(但请注意浮点数如何连接在一起分成单独的浮点数).
- 45.826(浮动)
- 53.91(浮法)
- 7(整数)
- 5(整数)
- 66.(浮动)
- 4(整数)
- 5.40(浮动)
- 3.(浮动)
请注意,66之间有故意的空格.和3.以上是由于数字的格式化方式.
例2:
Anoth3r Te5.t string .4 abc 8.1Q 123.45.67.8.9
- 4(整数)
- 8.1(浮动)
- 123.45(浮动)
- 67.8(浮动)
- 9(整数)
为了给出更好的想法,我在测试时创建了一个新项目,如下所示:
现在进入实际任务.我想也许我可以从字符串中读取每个字符,并根据上面的规则识别有效数字,然后将它们拉入列表.
以我的能力,这是我能管理的最好的:
代码如下:
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
type …Run Code Online (Sandbox Code Playgroud) 在Delphi中,我通常会编写一个简单的泄漏测试,如下所示:
program MemLeak;
{$APPTYPE CONSOLE}
uses
SysUtils;
procedure Leak;
begin
{ Put leaking code here. }
end;
begin
ReportMemoryLeaksOnShutdown:= True;
try
Leak;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
Run Code Online (Sandbox Code Playgroud)
如何检测Free Pascal/Lazarus中的内存泄漏?
我需要将应用程序(用XE2编写)移植到Mac.
我的应用程序分为简单UI executable(单线程)和不可见engine(严重依赖于OmniThreadLibrary 3.02和Cromis DirectoryWatch)
两个EXE都通过Cromis.IPC进行通信
这就是说我主要有这3个组件的问题(OmniThreadLibrary,Cromis IPC和DirectoryWatch)
我现在关注的是引擎,其中包含大部分代码.
我的问题是:是否有类似于OmniThreadLibrary,Cromis DirectoryWatch和Cromis.IPC for Mac?(无论是使用lazarus还是使用XE2作为目标编译器)
答案将帮助我很多决定我是否应该使用Delphi XE2或拉撒路(一个IDE这我不熟悉所有用),看看有什么提供/以最小的头痛同时支持Windows和Mac的最好的长期的办法
lazarus ×10
delphi ×8
freepascal ×2
ide ×2
pascal ×2
codetyphon ×1
comparison ×1
delphi-xe2 ×1
deployment ×1
fpc ×1
geometry ×1
integer ×1
ios ×1
macos ×1
math ×1
memory-leaks ×1
python ×1
resources ×1
string ×1
variables ×1
windows ×1
xcode ×1