gpt4 book ai didi

c++ - 没有实现文件时包含头文件?

转载 作者:行者123 更新时间:2023-11-30 00:56:39 25 4
gpt4 key购买 nike

我正在查看 ncmpcpp 的源代码,我看到了这个。

#include <mpd/client.h>

该文件中包含 ncmpcpp 使用的函数。但那些只是标题。 cpp 文件不也必须存在于某个地方吗?我无法在同一目录中找到它们。他们在哪里?

此外,当包含的内容被 < 和 > 包围时,我怎么知道要看哪里?

最佳答案

如果是第三方库,很可能不会包含源代码。也不需要。 header 中声明的所有符号(旨在使用)应在 .lib 中导出可能与 header 一起提供的文件。

除非你有template s,可以是内联的。

您只需要 cpp文件,或者更一般地说,实现文件,如果你想自己编译代码。你不知道。您可以使用只有 header 和二进制文件的模块。

当然会想到开源项目的例子,一般都是包含所有文件的,但是如果是商业产品,为什么要发布源代码呢?是什么阻止任何竞争对手复制它并以新名称转售它?

没有标准规则告诉在哪里寻找由 <> 分隔的 header 或 "" , 但普遍的共识是 <>将用于系统 header (如 stringiostream )和 ""对于自己的 header ( myclass.h )。它只是告诉编译器首先查找的位置。

关于c++ - 没有实现文件时包含头文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9687541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com