发现C++万能头文件的bug

学术版

ValueError @ 2024-11-01 19:35:40

故事是这样的:以前的我想模拟一下加载,使用了Sleep函数,由于当时的我只加了万能头文件(bits/stdc++.h),然后神奇的一幕发生了:

[Error] 'Sleep' was not declared in this scope

当时我无厘头的找bug,最后将目光转向了头文件,我加了一下三个头文件分别是: unistd.h、 Windows.h和 fstream

Sleep的bug解决了,我进一步验证了一下,虽然有些函数不加也行,但保险起见,劝大家加上去,别再让万头一个孤军奋战了。

如果你也发现类似情况或有发现新的bits/stdc++.h不包含的头文件,欢迎分享


by PengAo @ 2024-11-01 19:38:31

@ValueError 这可能并不是 bug?万能头只包含了标准库里的东西,Sleep 是 Windows 自己定义的


by __UrFnr__ @ 2024-11-01 19:39:00

这些需要用到 windows.h


by Lots_of @ 2024-11-01 19:42:36

@ValueError @UrFnr

你的问题,我也遇到了,把 sleep 改成 __sleep(0)


by ValueError @ 2024-11-01 19:42:48

@PengAo

时间紧张,一时放了一下严谨性


by Lots_of @ 2024-11-01 19:42:59

@Lots_of 加两个下划线即可


by ValueError @ 2024-11-01 19:44:14

可以打开万头那个.h文件看包含什么,以前打开过unistd.h,好短,内部只加了个io.h还有一个啥子的就没了


by cly312 @ 2024-11-01 19:44:16

有些标准库里的东西万能头里也不一定有


by zhang_jun @ 2024-11-01 19:47:59

@ValueError 有的函数没有不很正常吗


by ValueError @ 2024-11-01 19:48:01

@Lots_of 两个精度不同,本蒟蒻爱用Sleep 而且刚刚试了一下,你那种方法似乎不行


by Lots_of @ 2024-11-01 19:49:30

@ValueError 我能用


| 下一页