Delphi 中的“local”指令

2024-03-30

我正在调试一些代码,在 SysUtils.pas 中偶然发现了这一行:

procedure ConvertError(ResString: PResStringRec); local;

local 关键字到底有什么作用?似乎 ConvertError 函数没有在文件的接口部分中声明,这只是澄清该函数确实是本地函数,还是除此之外使用此指令还有实际好处?


它可以追溯到 Linux 编译器 Kylix。以下是我在 Delphi 6 语言指南第 9-4 页中看到的内容:

该指令local,它将例程标记为不可导出,是特定于平台的,并且在 Windows 编程中没有影响。

在 Linux 上,local指令为编​​译到库中但未导出的例程提供了轻微的性能优化。该指令可以为独立过程和函数指定,但不能为方法指定。声明的例程local-例如。

function Contraband(I: Integer): Integer; local;

—不刷新 EBX 寄存器,因此

  • 无法从库中导出。
  • 不能在界面一个单元的一部分。
  • 不能将其地址获取或分配给过程类型变量。
  • 如果它是纯汇编程序例程,则不能从另一个单元调用,除非caller设置 EBX。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Delphi 中的“local”指令 的相关文章

  • 在运行时创建 TQReport 元素

    在运行时创建 TQReport 元素 嗯 至少尝试一下 我不知道这份报告中应出现哪些标题或数据 我得到一个代表数据行和列的 TString 的 TList 我在组的带打印事件中植入 创建 指令 并在主数据行带的 OnNeedData 事件中
  • 错误:使用 Microsoft WebService.dll 通过 Delphi7 规范化 XML

    我正在使用 Delphi7 修改旧项目以添加使用证书和签名 经过一番搜索后我发现XML 规范化函数 https learn microsoft com en us previous versions dd815358 v vs 85 但我无
  • 如何将我的图标添加到组件选项板页面中的组件? [复制]

    这个问题在这里已经有答案了 可能的重复 Delphi非可视化组件图像 https stackoverflow com questions 3319276 delphi non visual component image 如何将我的图标添加
  • 我可以在“Delphi 2007 for Win32”中使用.NET DLL吗?

    是否可以在 Delphi 2007 for Win32 中使用 NET DLL 我尝试以与 ActiveX 组件相同的方式导入 DLL 但它似乎不起作用 组件菜单 gt 导入组件 gt 导入 NET 程序集 是否可能 如果可以 步骤是什么
  • 如何以编程方式安排任务

    如何使用 delphi 7 像 Google updater 一样安排任务 我没有使用注册表 因为它被卡巴斯基防病毒软件检测为误报 我在注册表中作为启动项添加的任何内容都会被检测为特洛伊木马 因此我决定使用任务计划 下面的代码展示了如何删除
  • 如何在 OSX 上的应用程序名称下创建子项菜单?

    如何在下面添加TMenuItemProject1以上Quit在下面的屏幕截图上 我创建了一个 TMenuBar 并选中了 UseOSMenu 属性 我添加的第一个 TMenuItem 是主栏中的第二个 TMenuItem 您可以通过将 II
  • 如何根据输入的内容过滤组合框的内容?

    我们有一个包含 100 多个项目的组合框 当我们在组合框中输入字符时 我们想要过滤掉项目 例如 如果我们输入 ac 并单击下拉选项 那么我们希望它仅显示以 ac 开头的项目 我怎样才能做到这一点 也许您会更喜欢使用操作系统内置的自动完成功能
  • 带位图的简单组合框

    如何将位图放入组合框中并将样式设置为简单 例如 Google Chrome 的右侧有星号 Firefox 的右侧有箭头 我尝试了这段代码 procedure TForm2 ComboBox1DrawItem Control TWinCont
  • 如何仅使用 TADOQuery 组件将图像插入数据库

    我有一个简单的基本问题 我正在尝试使用将图像插入数据库Insert与其他列值的语句也使用TADOQuery成分 由于代码已经由某人编写 因此我想在此处放置一些虚拟示例代码 以供您澄清相应的步骤 请注意 这可以正常工作TQuery组件 因为我
  • 我如何在Delphi中处理事件?

    例如 我有一个程序 在单击 Button1 后执行某些操作 如果没有 Button1Click 中的代码 如何处理按钮的 onclick 事件 我需要为 Button1 动态添加事件 unit Unit1 interface uses Wi
  • TDictionary 上的 GetItem 由链接器消除

    我正在使用一个TDictionary of
  • Delphi 返回 TList 时出错

    我做了一个非常简单的应用程序 但我有一个我真的无法理解的问题 看一下这个基本代码 unit Unit1 interface uses Winapi Windows Winapi Messages System SysUtils System
  • 石和磅的格式正确吗?

    我有一个图表 用于显示重量 以英石和磅 lbs 为单位 该图表由记录中的数据填充 对于权重 数据类型为 Double 记录数据是在运行时编辑的 我需要知道一种正确格式化输入数据的方法 为了更好地理解 首先看一下这些示例值 它们表示为石和磅
  • 每次 TDbGrid 的选定位置更改时都会触发什么事件?

    我的项目中有一个 TDbGrid 每次更改所选行时我都试图触发一个事件 行中的任何更改都已经更新了链接到同一数据源的所有数据感知控件 但还需要进行其他更改 我需要一个事件处理程序 我认为 OnColEnter 会起作用 根据帮助文件 它在以
  • 为什么 {$ifopt FINITEFLOAT ON} 无法编译?

    我有这样的构造 ifopt FINITEFLOAT ON message FINITEFLOAT option ON else message FINITEFLOAT option OFF endif 在我的源代码中 它不会编译 这一定是一
  • Delphi IDE导致CPU过热

    我正在使用 Delphi 7 但我已经尝试过 Delphi 2005 2010 版本 在所有这些新版本中 当 Delphi IDE 在屏幕上可见时 我的 CPU 利用率为 50 一个核心为 100 另一个核心为 宽松 当 IDE 最小化时
  • Delphi 5 中的 Oracle 数据库连接

    我正在使用 Delphi 5 版本 我想连接到 Oracle 数据库 我有 TDatabase 组件 我不知道如何通过 Delphi 连接到数据库 请提供连接数据库的步骤 谢谢 The TDatabase http docwiki emba
  • Delphi 6 命令行编译:无 DCU

    当对 dpr 文件使用 dcc32 时 它会生成一个 dll 但不会生成 dcu 项目级别 cfg 使用 N 开关设置路径 但指定的目录中没有任何内容 当 E 开关正在工作时 它必须看到 cfg 我尝试在调用 dcc32 之前对 dpr 文
  • 从创建 UI 的同一线程更新 VCL。为什么?

    我知道我必须调用 Synchronize 来从未创建控件或向窗口发送消息的线程更新 vcl 我经常听到 线程不安全 这个词 但我找不到关于正在发生的事情的实际解释 我知道应用程序可能会因访问冲突而崩溃 但我又不知道为什么 请阐明这个主题 V
  • Delphi 将面板流传输至文件

    今天我有一个关于将表单的一部分流式传输到文件的问题 在此示例中 我使用 Tmemo 而不是文件来查看流 这是我的表格 表单右上角的面板有一些控件 如标签 编辑等 使用 保存面板 按钮将面板保存在 TStream 上 这里是代码 proced

随机推荐

  • setInterval 似乎不起作用?

    这段代码似乎不起作用 我正在尝试创建一个可用聊天室的动态列表 每 10 秒更新一次 我还希望用户能够设置参数来过滤要显示的房间 我正在使用这段代码 但由于某种原因它似乎不起作用
  • 无法查看 Service Worker 日志

    看不到我的 Service Worker 的日志 以下是我尝试打开已注册和正在运行的服务工作人员日志的步骤 Open chrome serviceworker internals 单击开始并检查 刷新检查窗口 等待日志出现 但是 两者chr
  • 在 coreos 上启动 calicoctl 容器

    我有 CoreOS 测试版 1153 4 0 我正在尝试运行 calicoctl 来检查我的 calico 网络是否配置正确 所以我尝试使用以下命令运行 calicoctl rkt 容器rkt run quay io calico ctl我
  • Rails ActiveRecord:如何在 jsonb 上使用带双引号的绑定变量

    我有一个 postgres jsonb 查询如下 Blog where upload data gt name name 它可以工作 但会破坏构建 因为优秀的刹车员指出了可能的 SQL 注入风险 如果我使用绑定变量 Blog where u
  • 类型转换为 Dalvik 格式失败:无法执行 dex:包装器未首先正确加载

    当我在 Eclipse 中使用 Android SDK 和 AVD Manager 时 我遇到过各种奇怪的错误 就像标题中的错误一样 一般来说 我只是拔掉手机插头 然后重新插入 或者关闭并重新打开 Eclipse 但这很令人沮丧 显然Con
  • 浏览器不遵循 AJAX 响应的重定向(PHP 生成的响应使用 CAS 身份验证)

    好吧 看来我最初的问题犯了一个错误 因此 这里有一些更正 答案仍然适用 因为当协议更改为 HTTPS SSL 时 第二个重定向就会停止 就我而言 重定向发生了多次 并且浏览器不遵循第二次重定向 遵循第一个重定向 但返回错误 我一直读到包含重
  • 对于时间序列图,如何将 x 轴设置为没有周末的日历时间

    我想绘制一个时间序列 外汇期货合约的定价数据 时间给出yyyymmdd HH MM SS字符串格式 价格在double 该时间序列跨越一周多 但是 数据点的时间戳始终是工作日 是否有内置方法可以显示适当的 x 轴标签和缩放比例但没有周末 我
  • 此时无法启动异步操作

    我正在使用以下代码行调用异步操作 Task Run gt emailService SendEmail email Wait public async Task
  • Powershell - 将字符串输出为 CSV 并格式化

    我在下面给出了一个简单的例子 有谁知道我必须做什么才能将字符串输出到两列中 我的搜索在将输出格式化为 CSV 方面没有得到太多结果 请指出我正确的方向 LogFile c somefile csv Hello World Out File
  • 为什么我不能在淘汰赛中将数据连接到可观察数组

    我正在尝试将服务器中的元素添加到淘汰赛中的可观察数组中 这是我的视图模型 function ArticlesViewModel var self this this listOfReports ko observableArray self
  • jQuery:选择不为空的数据属性?

    我正在尝试选择所有具有data go to不为空的属性 我试过了 data go to 但奇怪的是 如果我这样做 它似乎会选择页面上的每个元素 Just as further reference and an up to date may
  • 直方图 ggplot:显示每个类别的每个 bin 的计数标签

    我将使用 ggplot 中的钻石数据集来说明我的观点 我想绘制价格直方图 但我想显示每次切割的每个箱的计数 这是我的代码 ggplot aes x price data diamonds df geom histogram aes fill
  • 我可以在 jQuery 中为每个动画步骤实现回调吗?

    我想在我的网站中实现一个动画 需要更新多个 DOM 元素 每个 DOM 元素都有自己的动画路径 取决于它们的位置 并且仍然有缓和的效果 如果我为每个元素调用 jQuery 的 animate 函数 队列 false 它将使每个元素与其余元素
  • UIAlertController (ActionSheet) - 无法同时满足约束[重复]

    这个问题在这里已经有答案了 每次在模拟手机中显示 UIAlertController 操作表时 我都会收到此警告 代码没什么花哨的 let action1 UIAlertAction title Action 1 style default
  • 批量替换XCode中的版权注释

    我已经在 iOS 项目上工作了一段时间 创建了数百个源文件 现在一切都完成了 我意识到一些悲伤的事情 我在开始工作之前编辑了版权文件模板 并且我的所有文件都已这种蹩脚的格式 MyClass h Created by Redwarp on 3
  • SwiftUI:如何迭代可绑定对象的数组?

    我正在尝试学习 SwiftUI 以及绑定的工作原理 我有这段有效的代码 它显示了项目列表 当点击一个项目时 对该项目的绑定将传递到子视图 struct ProjectsView View ObjectBinding var state Ap
  • 将 HashMap 内容写入文件

    我有一个HashMap
  • 使用 php SimpleXML 解析 XML 命名空间

    我知道这个问题已经被问过很多次了 但我无法得到任何适合我的情况的建议 我已经在网上和这里搜索并尝试了一切 但没有任何效果 我只需要使用命名空间 cap 解析此 XML 并且只需要其中的四个条目
  • jQuery 查找值然后替换 SRC

    任何人都可以看到这段代码有什么问题 它只是不起作用 我在尝试着 获取 product variants option 0 的值 搜索 preload 相关图像并 然后将 div image img src 更改为该图像 jQuery doc
  • Delphi 中的“local”指令

    我正在调试一些代码 在 SysUtils pas 中偶然发现了这一行 procedure ConvertError ResString PResStringRec local local 关键字到底有什么作用 似乎 ConvertError