View source code
Display the source code in rt/lifetime.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Function rt.lifetime._d_newitemT
Allocate an uninitialized non-array item.
This is an optimization to avoid things needed for arrays like the _arrayPad(size).
- _d_newitemU
leaves the item uninitialized
- _d_newitemT
zero initializes the item
- _d_newitemiT
uses a non-zero initializer from TypeInfo
Used to allocate struct instances on the heap.
struct Sz {int x = 0;}
struct Si {int x = 3;}
void main()
{
new Sz(); // _d_newitemT(typeid(Sz))
new Si(); // _d_newitemiT(typeid(Si))
}
Parameters
Name | Description |
---|---|
_ti | TypeInfo of item to allocate |
Returns
newly allocated item
Authors
Walter Bright, Sean Kelly, Steven Schveighoffer
License
Distributed under the Boost Software License 1.0. (See accompanying file LICENSE)
Copyright © 1999-2024 by the D Language Foundation | Page generated by ddox.