Delphi 如何编写一个小程序?
我希望编程效率高,并保持我的文件大小非常小。 然而,我想知道一些技巧如何做到这一点 例如,对于较小的文件大小,什么更好: 要么:Delphi 如何编写一个小程序?,delphi,filesize,Delphi,Filesize,我希望编程效率高,并保持我的文件大小非常小。 然而,我想知道一些技巧如何做到这一点 例如,对于较小的文件大小,什么更好: 要么: if .... = '1' then begin ... end; 或: 或: 或: 然后我尝试了一些东西,我很惊讶。 我在项目中创建了另一个单元,将字符串存储为常量,然后使用常量变量替换项目中的字符串。出于某种原因,这会增加我的文件大小,尽管我现在将双重使用的字符串替换为var 另外,将内容存储在vars中是否比将它们直接放入代码中更好?! 例如: Functi
if .... = '1' then begin
...
end;
或:
或:
或:
然后我尝试了一些东西,我很惊讶。
我在项目中创建了另一个单元,将字符串存储为常量,然后使用常量变量替换项目中的字符串。出于某种原因,这会增加我的文件大小,尽管我现在将双重使用的字符串替换为var
另外,将内容存储在vars中是否比将它们直接放入代码中更好?!
例如:
Function1(param1, param2, param3); // this code is used about 20 times in my project
或者如果我:
Avar = Function1 (param1,param2,param3); // Store this once in a var and then replace it
那么:
if ... = TRUE
或:
同:
if .... = FALSE
或:
对于较小的文件大小,是否还有其他提高编程效率的技巧
提前谢谢
我使用Delphi7我很抱歉直截了当,但你是本末倒置 如果您真的想知道如何使可执行文件变小,而不知道给定示例中的代码变化会导致什么差异,那么您应该立即停止阅读/学习/练习,直到您对该语言和编译器有更多的了解 然后你就会明白你的问题本身没有什么意义,因为你已经从你得到的所有相关评论中看到了这一点
- 完全相同的源代码可以产生截然不同的可执行文件,不同的源代码可以产生相同的可执行文件,具体取决于编译器选项/优化
- 如果您的主要目标是微观管理/控制生成的exe,请直接在汇编程序中编程
- 如果您想知道编译器生成了什么,请学习如何使用CPU视图
- 首先对正确性进行编程,然后对可读性/可维护性进行编程
- 只有这样,如果需要(意味着使用正确的指标/工具),您才能优化速度、内存使用或文件大小(可能是最不有用/最不需要的)
表单单元和所有引用它的单元)。唯一的方法是直接在GUI上使用Windows API,我现在想不出这样做的理由,但出于兴趣
一旦您使用VCL,exe大小将增长得更多,而您的代码中的所有微优化都无法减少它。您主要谈论的内容对exe大小没有影响,或者完全可以忽略不计。如果您想要非常小的exe,则不得使用VCL。就这么简单。您提到的所有优化都已由编译器处理。大多数情况下,高效编程与文件大小无关。您应该更多地关注代码的可读性和可维护性。您应该提供更多信息—如果这是一个非常简单的控制台应用程序,则提供完整的源代码。否则这个问题就没什么意义了。UPX实际上让事情变得更糟。加载程序不是只加载您需要的可执行文件的那一部分,而是全部加载。与从共享同一RAM的公共可执行文件运行的多个进程不同,每个进程都需要自己的解包可执行文件副本。
Avar = Function1 (param1,param2,param3); // Store this once in a var and then replace it
if ... = TRUE
if ....
if .... = FALSE
if not(...)...