use*_*929 -1 c++ language-lawyer
我听到这些词语被抛出很多,但我不明白它们在c ++中的含义.有人告诉我在标准中查找它,但在索引中没有提到"堆栈"或"堆",只有堆栈展开没有说明堆栈是什么.
这些概念是否存在于C++中?
我听到这些话被扔了很多......
是的,这些被广泛使用来自误解和坚持不恰当的术语,将硬件和操作系统概念与编程语言实现相结合.
这些概念是否存在于C++中?
只要你将"堆"称为动态存储持续时间,并将"堆栈"称为自动存储持续时间,c ++标准就没有这些特定术语的概念,而是使用其他术语.所以不行.
请注意,局部变量,全局变量或参数的自动存储持续时间没有区别.
如何实际完成被视为实现细节,实际上取决于目标CPU架构和OS环境.
完成答案(这就是为什么我说"只要你指的是..."):
c ++标准库实际上为a std::stack和堆提供了概念.
但这些是指数据结构,与实现任何类型实例的内存分配无关.