[杂谈]内存泄露的前生今世

1、什么是内存泄露,内存泄露有什么危害? 内存泄露是指程序中申请了内存使用后,没有正确释放(如 new[] 分配的内存,用 delete 释放)或者根本就忘了释放,从而在程序运行过程中一直占用着内存空间的问题。 内存泄露本身没什么特别大的危害(鬼才信~~~),唯一的问题是:这块内存区域被占着地方不放,没法拿来干别的用了

抱歉,我也是头次知道 Format 的参数可以这么玩

折腾 Delphi 这么久,我也是在翻译系统资源的时候,才注意到有类似下面的鬼怪出没: …. %0:d … %1:s 当前群里还有人问了怎么个意思?我本着我不糊弄人谁糊弄人的伟大人道主义精神,大声的告诉人家我也不知道。不过当今天再次遇到的时候,却不小心触动了好奇害死狗的精神,于是尝试了一下,发现

[杂谈] Idera 关于收购 Embarcadro 发给合作伙伴的信

亲爱的女士、先生们, 我是 Randy Jacops ,IDERA公司的首席执行官,您们可能已经看到新闻报导 IDERA公司最 近并购了 Embarcadero Technologies公司的消息。如果您没有看到的话,这是这则新闻 的网络链接。 我们竭诚的欢迎您加入 IDERA这个大家庭,同时我们也希望能延续 Emba

[VCL]如何同时向剪贴板存贮多种格式的内容

有时候,我们需要实现类似于 Word 或 WPS 一样,能够同时往剪贴板中存入多种格式,然后在不同的应用中粘贴需要的格式。 VCL 本身是支持这个操作的,只是没有提供详细的文档,通过它源码的注释,找到了如何同时存贮多种格式的方法: 1、调用 Clipboard.Open 来打开剪贴板; 2、调用 Assign 、 As

Delphi/C++ Builder 10 中 Android 服务的一处低级 Bug 修复

今天在 QDAC 官方群里,好路说创建 Android Service 时,选择 Remote Service 时无法编译,经验证确实存在该问题。经过跟踪查找,问题出现在系统自动生成的服务编写的 java 文件里,而这个文件的模板来自于: %userprofile%\AppData\Roaming\Embarcader

TQPagedList 不同分页尺寸的性能对比

为了更好的了解 TQPagedList 在不同页面尺寸下的性能,为其设置一个最佳的默认值,特做此测试。测试样本为10万条记录,统计不同操作的用时,得到结果如下表所示:   我们为了更直观的观察,做成柱状图以便对比,由于追加测试性能基本上没变化,我们就没有做该类型测试的图表: 我们根据上面的图表,进行下简单的总

[译]即将到来-新版 Delphi/C++ Builder 特性介绍

1、iOS 64 位通用应用调试 原文链接 2、作为 Android 后台服务程序运行 原文链接 Delphi 的一个新的重大特性的一角! 加入了快速易用的 Android 服务向导来支持在你的工程加入后台服务。构建 Android 服务应用可以在 Android 系统上执行后台任务。 构建物联网的伟大创新解决方案。

[讨论] 2015-8-13日 主题:关于指针和堆栈

【码神】[长春]swish(109867294) 21:17:40 这块要明白一个东西,我们程序所能操作的数据,从CPU的角度来看,只是在寄存器中的那几个东西。剩下的内存中的东西,磁盘上的东西,实际上对于CPU核心来说,都是外部的东西。 【码神】[长春]swish(109867294) 21:19:07 就象对一个人来

[QPlugins]为啥不能在 DLL/BPL 与主程序之间直接传递对象做为参数?

这实际上是一个很古老的话题了,但许多朋友还并不知道之所以不能传递的原因。所以在本文就试图为大家简单的说明一下。 首先,对象是类的一个具体的实例。而这就存在以下问题: 不同的语言对于类的实现方式也不一样,所以,同样名为 TMyClass 的 Delphi  实例 A 并不可能转换为同名的 C++ 实例 B,就算是强转了,

VCL DLL 中如何解决 Tab 键不好使的问题?

QPlugins 支持 DLL 插件,但是,插件中的窗体如果要嵌入主窗体的某个控件上,往往会发生一些奇怪的事情,百度 Delphi DLL Form 大约可以搜索到 860,000 个结果,大家给出的解决方案千奇百怪。本文提供的解决方法反而可能是最简单的了。 首先声明一下,这个不是最完美的解决方案,QPlugins 里

[教程] C++ 的程序结构

1、函数 函数是人为的将一段具有某一功能的代码按特定的格式组织在一起,以便在程序的其它地方随时调用的一块代码的实体。在 C/C++ 中,它的格式为: [修饰符] 返回值类型 [修饰符] 函数名([参数列表])[修饰符] { [函数实现] } 初学时,我们暂时先不考虑各种修饰符,只关系核心的部分: 返回值类型:用于给调用

[QDB] 一个新的原生二进制转换器,生成文件的体积最小

QDB 新实现了一个 TQBinaryConverter 做为原生的二进制格式,它的源码位于 qconverter_stds.pas 里,相比 MsgPack、Json 及 FireDAC  的二进制格式,其体积也更小,速度也更快。同样 10 万条记录,下面是几种格式的保存结果对比(均未压缩): TQBinaryCon