Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;STL或TR1(不是boost::TR1)仅在Windows上工作?_C++_Visual Studio_Stl_Visual C++ 2010_Tr1 - Fatal编程技术网

C++ C++;STL或TR1(不是boost::TR1)仅在Windows上工作?

C++ C++;STL或TR1(不是boost::TR1)仅在Windows上工作?,c++,visual-studio,stl,visual-c++-2010,tr1,C++,Visual Studio,Stl,Visual C++ 2010,Tr1,我认为STL是一个标准实现,尽管TR1可能不是。但平台重要吗?我想它可以在Windows/Linux/Unix/Mac上运行。我有人说,除了Windows之外,它在任何东西上都不起作用 请让我知道 < P>不,Alexander Stepanov(Hp)与HP(Stand)图形的开发(不与C++标准库混淆)。STL的大部分被包含在C++标准库中,因此有时在C++标准库中STL和模板容器会混淆。 第二个STL实现(SGI)是设计用于与任何标准兼容的C++编译器一起工作的,尽管IILC不是早期的微

我认为STL是一个标准实现,尽管TR1可能不是。但平台重要吗?我想它可以在Windows/Linux/Unix/Mac上运行。我有人说,除了Windows之外,它在任何东西上都不起作用

请让我知道

TIA/P> < P>不,Alexander Stepanov(Hp)与HP(Stand)图形的开发(不与C++标准库混淆)。STL的大部分被包含在C++标准库中,因此有时在C++标准库中STL和模板容器会混淆。

第二个STL实现(SGI)是设计用于与任何标准兼容的C++编译器一起工作的,尽管IILC不是早期的微软C++编译器,因为缺少所需的特性。(我似乎还记得90年代末我试过玩它)。C++标准库现在需要一些,所以没有“标准实现”可能。(IIRC这些用于原子操作,但如果您更了解,请编辑或注释)

<> P>使用VisualStudio实现C++标准库只适用于“Windows”*,并且可能只与微软的C++编译器一起使用。其他实现将与其他编译器和其他平台协同工作


告诉你胡说,或者你没有正确地说出他们所说的。STL和Tr1分别是1994和2005的库规范。它们不是实现。任何人都可以在任何平台上实现他们喜欢的任何东西。为什么我们要谈论这些古老的,死的东西呢?C++标准库包含STL和Tr1的许多有用的方面,以及实际的、可用的实现,它们与所有当代C++编译器一起使用。您可以举例说明需要编译器使用内插函数的STL使用吗?我肯定有,我只是想不出一个。@user3104201除了上面的一个,没有。你可以使用互斥来实现原子操作(效率很低)。std::is_pod在没有编译器支持的情况下是不可能准确实现的(可以安全地假设,例如,没有类型是pod,但它又是低效的。)@n.m.-你说得对,你可以使用互斥锁实现原子操作,但原子学的一个重要目标是无锁,而使用互斥锁的实现不是无锁的。因此,使用互斥体的实现在形式上是一致的,但在实践中是无用的。