作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个 sample.dll 文件和一个相应的 sample.h 头文件。我将两者都添加到引用中,并将 header 包含在我的 C++ 代码中。该程序如何知道头文件对应于特定的 .dll?
最佳答案
How this program knows that header file corresponds that particular .dll?
没有!
基本上,当您编译程序时,编译器会看到 sample.h
中的声明,并为链接器做一个注释,以便稍后在需要时找到相应的定义。
当需要链接您的程序时,链接器将查看您正在链接的所有 DLL、库和其他目标文件,并尝试找到与编译器在文件中找到的所有声明相对应的定义 sample.h
,在您的情况下,它将在 sample.dll
中找到它们,因为它们是在此处编译的。
如果链接器没有找到匹配的定义,或者找到了多个,那么这是一个错误,链接将失败。这就是为什么您的程序不需要知道什么 header 对应于什么特定的 .dll,因为 there is only have definition allowed对于这些声明中的每一个,它可以到处寻找直到找到它。
关于c++ - 我的代码如何知道它寻址的是哪个 .dll?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28887301/
我正在尝试提供即时转码的视频。不幸的是,这意味着寻求不起作用。我假设这是因为浏览器不知道视频有多长,因此无法正确显示搜索栏。 有谁知道是否可以对视频的时长进行硬编码? 我想到的另一个选择可能是创建我自
我是一名优秀的程序员,十分优秀!