Anonymous user
Memory allocation: Difference between revisions
add rust solution
m (→{{header|Retro}}: update for retro12) |
(add rust solution) |
||
Line 1,320:
end
t = Thingamajig.allocate</lang>
=={{header|Rust}}==
The method shown below will be deprecated soon in favor of the `std::alloc::Alloc` trait. Follow the progress on github's issue tracker:
https://github.com/rust-lang/rust/issues/32838
<lang rust>// we have to use `unsafe` here because
// we will be dereferencing a raw pointer
unsafe {
use std::alloc::{Layout, alloc, dealloc};
// define a layout of a block of memory
let int_layout = Layout::new::<i32>();
// memory is allocated here
let ptr = alloc(int_layout);
// let us point to some data
*ptr = 123;
assert_eq!(*ptr, 123);
// deallocate `ptr` with associated layout `int_layout`
dealloc(ptr, int_layout);
}</lang>
=={{header|Scala}}==
|