在C++中创建库头文件?(相对于旧式的C?) 我刚刚学习C++,我决定了一个项目,我最好回到绘图板上,从头开始写C++,而不是用C.来写。

在C++中创建库头文件?(相对于旧式的C?) 我刚刚学习C++,我决定了一个项目,我最好回到绘图板上,从头开始写C++,而不是用C.来写。,c++,header-files,libraries,C++,Header Files,Libraries,这个项目的一个关注点是包括库。有些库在C++中不需要,但有些会。 < >我注意到,包含库头的语法在C++中不同于C中的C.,你写如下: #include <someheader.h> 另一方面,C++中,如果是C++库,则键入以下内容: #include <someheader> 因为,我很小心,我在如何把C++头文件放在一起的方式上比我把C头文件放在一起的方法有点不同——或者至少在我在文件系统中如何命名它方面有一些不同。 那么,有没有人知道我在组装C++库头文件时需

这个项目的一个关注点是包括库。有些库在C++中不需要,但有些会。

< >我注意到,包含库头的语法在C++中不同于C中的C.,你写如下:

#include <someheader.h>
另一方面,C++中,如果是C++库,则键入以下内容:

#include <someheader>
<>因为,我很小心,我在如何把C++头文件放在一起的方式上比我把C头文件放在一起的方法有点不同——或者至少在我在文件系统中如何命名它方面有一些不同。

那么,有没有人知道我在组装C++库头文件时需要知道的信息,而不是C?大多数,如果不是全部,标准C++库包括文件没有.h扩展,以区别它们与C库包括。在C++中,原始C标准头文件名被禁止,尽管实际上每个编译器仍然支持它们,并且在名称上更改为C,然后是原来的C文件名,而没有.h扩展。


例如:在C中,与字符串相关的头文件是String .h,但是与字符串相关的C++头文件是字符串。C首文件也可以在C++中作为cSnc++访问。

< P>没有区别。大多数,如果不是全部,标准C++库包括文件没有.h扩展,以区别它们与C库包括。在C++中,原始C标准头文件名被禁止,尽管实际上每个编译器仍然支持它们,并且在名称上更改为C,然后是原来的C文件名,而没有.h扩展。


例如:在C中,与字符串相关的头文件是String .h,但是与字符串相关的C++头文件是字符串。C首文件也可以在C++中作为cSnc++。/P>< P> >将标准C标题与标准C++头混合。但要始终如一。对于C++项目使用,对于C使用,因为C++头使用命名空间,并且可以避免名称冲突。所有标准C标题都在C++中复制,所以可以在C++代码中自由使用C库。


如果你仔细看,你会发现它包括。其他标准C标题也是如此。

< P> >可以将标准C标题与标准C++头混合。但要始终如一。对于C++项目使用,对于C使用,因为C++头使用命名空间,并且可以避免名称冲突。所有标准C标题都在C++中复制,所以可以在C++代码中自由使用C库。
如果你仔细看,你会发现它包括。其他标准C头也是如此。

其中的内容与语言无关。它是您要包含的文件的名称。尽管C++是不正确的,但是由于STDIO。h在C++中被弃用。对于标准的头,首选替代。对于任何其他库,您都不能简单地决定使用哪个库:您必须匹配文件名。@chris可能不赞成使用它,但我还没有找到没有它的实现。@dr:这是因为它不赞成使用,而不是删除。此外,语言扩展内部的东西与语言无关。它是您要包含的文件的名称。尽管C++是不正确的,但是由于STDIO。h在C++中被弃用。对于标准的头,首选替代。对于任何其他库,您都不能简单地决定使用哪个库:您必须匹配文件名。@chris可能不赞成使用它,但我还没有找到没有它的实现。@dr:这是因为它不赞成使用,而不是删除。此外,语言扩展也值得注意的是,标题字符串.h在C++中被弃用。您应该使用cstring来代替大多数(如果不是所有的话)标准C头。这也解决了string和string.h之间的“歧义”,因为cstring清楚地表明您包含了一个标准的C头。换句话说,如果我理解的话,您是说我只需要将文件命名为someheader而不是someheader.h,这是唯一的区别。非常感谢——我只是想确定事情是这么简单,而不是让人惊讶。@Sophia_ES NO!不是我说的。您仍然应该使用.h扩展名命名自己的头文件。只有C++标准库名称没有扩展。实际情况下,当拥有.h扩展事项时,XCODEE IDE不会突出显示文件中没有扩展步骤的代码:创建项目、创建头文件、删除扩展、添加一些代码、保存、重新加载项目、查看代码。这不适用于标准库标题,它们突出显示得很好。还值得一提的是,标题字符串.h已被弃用
在C++中。您应该使用cstring来代替大多数(如果不是所有的话)标准C头。这也解决了string和string.h之间的“歧义”,因为cstring清楚地表明您包含了一个标准的C头。换句话说,如果我理解的话,您是说我只需要将文件命名为someheader而不是someheader.h,这是唯一的区别。非常感谢——我只是想确定事情是这么简单,而不是让人惊讶。@Sophia_ES NO!不是我说的。您仍然应该使用.h扩展名命名自己的头文件。只有C++标准库名称没有扩展。实际情况下,当拥有.h扩展事项时,XCODEE IDE不会突出显示文件中没有扩展步骤的代码:创建项目、创建头文件、删除扩展、添加一些代码、保存、重新加载项目、查看代码。这不适用于标准库标题,它们高亮显示得很好。我指的是标准标题。你误解我了。我会修正的,我是说标准标题。你误解我了。我会修好的。