问题标签 [standard-library]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - MSDN - 是他们还是我?
在这里我找不到标题 type_traits。是它丢失了还是我丢失了一些东西(再次......)。
c++ - 在 C++ 中实现 C 标准库
假设操作系统/内核是用 C++ 编写的,并且不会“做”任何纯 C 风格的东西,而是公开基于成熟 C++ 标准库构建的 C 标准库。这可能吗?如果不是,为什么?
PS:我知道 C 库是“C++ 的一部分”,但假设它在内部基于基于 C++ 的实现。
小更新:似乎我在这里引发了关于我的规则“允许”什么的讨论。一般来说:C 标准库实现应该尽可能使用 C++/ Right (tm)
。我主要考虑算法和在幕后对静态类对象进行操作。我并没有真正排除任何语言特性,而是试图将重点放在理智的 C++ 实现上。关于 setjmp 示例,我看不出为什么有效的 C(将使用其他在 C++ C 库中预先实现的部分或根本不使用任何其他库函数)会违反我的“规则”。如果 C++ 库中没有对应的库,为什么还要争论它的使用。
c++ - C++ 库的 C 部分是否自动为 C99?
符合 C++98/03/0x 实现的所有函数是否完全符合 C99?
我认为 C++0x 添加了一些 C99(语言)特性,但从未听说或读过任何关于 C 库函数的明确信息。
为避免混淆,我说的是使用<c*>
头集中声明的函数的 C++ 程序。
谢谢。
c++ - C++标准模板库向量题
有人可以用英语解释这里发生了什么吗?
python - 是否可以使用标准库(没有额外的模块)最小化 python 中的控制台?
我写了一个使用控制台的程序。大多数时候,用户必须看到控制台信息。对于命令行中的特定功能,我想在没有控制台升起的情况下运行脚本。我只是不想看到窗口,但它可以在任务栏中。我知道我可以使用额外的模块(gui、win32、..)来做到这一点,但我想使用标准的 python 库。
有可能这样做吗?
该程序应在 Windows 上运行。(蟒蛇2.7)
我指定...我知道我也可以使用 pythonw.exe。那么问题是如何有时使用 python.exe 和 pythonw.exe (从命令行)为特定功能启动相同的脚本?
c++ - 标准库分配器指针类型的要求
我正在尝试编写一个四叉树稀疏矩阵类。简而言之,aquadtree_matrix<T>
要么是零矩阵,要么是 的四元(ne, nw, se, sw)
组quadtree_matrix<T>
。
我想最终测试不同的分配方案,因为这可能会影响线性代数运算的性能。因此,我还将quadtree_matrix
在标准分配器类型上进行模板化,以便我可以重用现有的分配器。
我将不得不分配两种不同类型的数据: aT
或 a node
,其中包含四个指针(指向 T 或节点)。对于我将考虑的所有算法,我确切地知道期望什么样的数据,因为我知道在算法的任何时候我所面临的子矩阵的大小是多少(我什至不需要存储这些大小)。
我当然会使用两种不同的分配器:这没关系,因为分配器类型提供rebind
模板和模板复制构造函数(并且旨在用作值类型,正如get_allocator
标准容器的成员通过返回副本所建议的那样)。
问题是分配器成员函数使用某种pointer
类型,它不需要是普通指针。一些分配器(增强进程间分配器)广泛使用此功能。
如果分配器指针类型是花园品种指针,我不会有任何问题:至少,我可以使用指向 void 的指针并将它们重新解释为正确的类型(node*
或T*
)。我也可以使用联合(可能更好)。
据我所知,对类型的 POD 没有要求allocator::pointer
。它们只需要是随机访问迭代器。
现在,我的问题是:
给定一个分配器类模板A<T>
(或其等价物A::rebind<T>::other
),是否有任何保证:
- 提供的静态转换能力
A<T>::pointer
是一个可访问的基础?A<U>::pointer
U
T
- 提供静态强制转换的能力
A<T>::pointer
是可访问的基础,并且被继承人的“运行时类型”(无论这在此上下文中意味着什么)是?A<U>::pointer
T
U
U
- 类型
A<void>::pointer
(如果这有意义的话)?
或者有没有我没有想到的问题的解决方案?
java - 一个兼容的 Java 实现不能包含所有的标准库吗?
我正在用 JavaScript 编写 JVM 的实现,这意味着用 JavaScript为标准库编写大量本机代码。然而,标准库中有大量的类只被少数程序使用,试图让需要本地实现的部分本地实现既乏味又没有什么收获。
实际上是否要求有效的 Java 实现包含所有标准库类的实现?或者我可以让核心 Java 库(比如 java.lang.* 和它引用的所有内容)正常工作,然后声称我有一个兼容的 Java 实现,它可能会为引用未实现特性的代码抛出 VerifyErrors?
c - Is the term "libc" equivalent to "C standard library"?
I sometimes hear people using the terms "libc" and "C standard library" interchangeably. I understand that "libc" is the name (or part of the names) of many popular C standard library implementations. My guess is that because of the widespread use of these implementations, people started referring to the C standard library in general as "libc" although it is not an official name.
Is it correct to refer to the C standard library as "libc"?
c++ - C++ 标准库中“at()”索引函数的真实用例?
C++ 的 container vector
, deque
, ...at(index)
除了operator[index]
访问容器元素外,还提供访问器功能。
此成员函数和成员运算符函数 operator[] 之间的区别在于,如果请求的位置超出范围,则 deque::at 会通过抛出 out_of_range 异常来发出信号。
我从来没有在我的代码中需要这个函数,因为在我的 C++ 代码中访问可能超出范围的元素是没有意义的。始终编写代码以访问正确的索引(或在索引无法匹配的情况下产生有意义的错误/异常。)
at()
我会对生产代码中使用的真实世界示例(可能来自一些开源项目,因为这会添加一些上下文)感兴趣。
也许有人可以举一个使用at()
有意义的算法问题的例子。
注意:我最近在一些单元测试代码中使用了它,其中添加索引检查代码被认为不值得麻烦,并且抛出的 out_of_range 异常被at()
认为是足够的 info+context 以防测试中断。
注意:关于ildjarn 的回答- 我不想就此展开讨论或评论。我对“积极”的发现很感兴趣,这是使用它的具体例子。谢谢你。
haskell - Haskell 标准库类型类的替代实现
我看到很多人抱怨标准库中的一些类型类说“Monad 应该需要 Functor”甚至“Monad 应该需要 Applicative”、“Applicative 应该需要 Pointed”、“Num 不应该需要 Show”等,所以,我有一些问题:
是否有关于类型类依赖树具有社区感知的那些“缺陷”的方式的论据,或者这只是历史上如何完成事情的结果?
这方面的巨大变化会破坏现有代码吗?
是否有基本类型类(特别是箭头、monad、applicative 等)的替代实现来实现“正确”的类依赖集?