Delphi接口使用是可传递的吗?
假设某个程序A使用某个单元B,而该单元B使用某个单元C:Delphi接口使用是可传递的吗?,delphi,Delphi,假设某个程序A使用某个单元B,而该单元B使用某个单元C: program A; uses B; unit B; interface uses C; A是否也隐式使用C (我不是问最佳实践,而是从编译器/静态分析的角度。)有两种方法来解释这个问题 程序A包括C单元吗 是的 程序A source.dpr文件能看到C单元声明的公共名称吗 否。如果您的意思是A能够访问C,仅仅因为它使用B,那么不。编译,是的。但是您需要在A中显式地使用C。但是你可以自己尝试一下,这是一个非常简单的测试。值得一提的是:
program A;
uses B;
unit B;
interface
uses C;
A是否也隐式使用C
(我不是问最佳实践,而是从编译器/静态分析的角度。)有两种方法来解释这个问题
否。如果您的意思是
A
能够访问C
,仅仅因为它使用B
,那么不。编译,是的。但是您需要在A
中显式地使用C
。但是你可以自己尝试一下,这是一个非常简单的测试。值得一提的是:Pascal的接口
和实现
部分与C的.h
-和.C
-文件之间存在一些松散的关系,但是Pascal的uses
-子句看起来比C的相当粗糙的#include
预处理器指令温和得多。