繁体   English   中英

C ++ 11:struct timeval

[英]C++11: struct timeval

我被告知不要在c ++程序中包含像<stdio.h>这样的C头文件,而是使用<cstdio>等代替。 如何在不包含<sys/time.h>情况下获取struct timeval

替代问题,是否有任何C ++ 11替代使用select / poll(在POSIX系统上)?

<cstdio>和类似的是C标准库的C ++变体。 <sys/time.h>根本不是C标准库的一部分(它是certan OS的POSIX接口的一部分),因此没有C ++特定的sys/ctime这样的东西,所以不,你只是使用与C中相同的头文件。

拥有C样式和C ++样式头的主要原因是将extern "C"应用于头文件中声明的函数。 在某些系统中,可能需要像这样包装函数:

 extern "C" {
 #include <sys/time.h>
 }

但在我的Linux系统中,它在标准的<sys/time.h>文件中执行此操作。

<cstdio>是C库<stdio.h>的C ++变体。 不同之处在于C版本是在全局命名空间中定义的。

您可以在此处查看这些标题的列表: http//www.cplusplus.com/reference/clibrary/

<sys/time.h>不是标准库的一部分,因此在C ++中没有等效项。 你必须像在C中一样使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM