有一种方法可以包括std ::文件系统的前向标头?

问题描述 投票:0回答:2
在iostreams具有前向标头的方式中,仅带有声明的标头,我认为文件系统也将具有一个标题。但是我找不到一个。 我有一个类,该类将单个成员函数以

#include<iosfwd>

为论点,这似乎是一个过分的杀伤,使整个
filesystem::path const&

只是为了获得

#include<experimental/filesystem>

path
	

那里有这样的标题?编号
你应该做这样的标题吗?另外,不。 
c++ filesystems c++14 header-files
2个回答
3
投票

如果C ++程序的行为将不确定,如果将声明或定义添加到命名空间或命名空间中的名称空间#include<experimental/filsystem_fwd> // or #include<experimental/filesystem/path/*only*/> ... struct A{ ... void save(std::experimental::filesystem::path const& p); } ,除非另有说明。

由于namepace的任何前瞻性声明都必须成为

std

名称空间的一部分,因此您不能做到这一点。您可以写模板专业,在某些情况下,您可以戳戳本身。但是声明
std
您无法做的事情。
    

恕我直言不讳的是,没有提供子组件的标头 - 只有这些庞大的收集标头(

--与Boost's Path.hpp.hpp等相对),但是我们甚至没有一些... FWD标准器标准化(除了
)。
https://github.com/ned14/stl-header-heft

让一个人想知道委员会是否在非旁皮路径情况下(数百万个LOC CODE-BASE)进行了适当的工作,以及设计使用文件系统特定于特定于特定的参数的简约界面标头是一个好主意 - 也许一个人会选择诉诸于普通的基于基于弦乐的文件系统参数...

提到std ::文件系统似乎比boost :: filesystem(so

0
投票
|你能做这样的标题吗?另外,第

为什么恕我直言,API提供商也确实为其(更改!)提供官方/中央FWD.H标题非常重要。由于做危险的猜测不是消费者的工作。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.