堆栈或堆
问题描述:
我在寻找一个现代的编程语言,它允许指定特定类型的变量,原始的或复杂的,将被分配明确地分配内存。 C++实现这种行为:堆栈或堆
堆栈
auto stackAllocatedVal = MyClass(params);
堆
auto heapAllocatedPtr = new MyClass(params);
或
void* heapAllocatedSpacePtr = malloc(SIZE);
//now we can fill the allocated space on heap
能够这样做的语言,我知道,是C++和生锈。但我寻求一个更实用的。任何建议?
答
MLKit with regions实现扩展了基于区域的内存管理功能的编程语言Standard ML,这可能是接近你在找什么。一般来说,这里的主要技术挑战是保证手动内存管理下的安全性,例如当对象X被释放时之前指向X的另一个对象。
这是什么意思“更多功能”? – Renzo
@Renzo功能作为一种编程范式 – Rulli
C++提供lambda表达式,所以你可以在一个函数式编程风格使用。 – Renzo