digitalmars.D.learn - Right ways to work without gc without betterC.
- Konstantin (28/28) May 01 2020 I saw docs for std.experimental.allocator and also had found
I saw docs for std.experimental.allocator and also had found automem library(https://code.dlang.org/packages/automem) for c++ style memory management via smartpointers. From GC documentation std.experimental.allocator can not be used for: NewExpression Array appending Array concatenation Array literals (except when used to initialize static data) Associative array literals Any insertion, removal, or lookups in an associative array Extracting keys or values from an associative array Taking the address of (i.e. making a delegate to) a nested function that accesses variables in an outer scope A function literal that accesses variables in an outer scope An AssertExpression that fails its condition Is that actual information? Does someone work to implement switch between gc and non-gc approach? I learned for now automem's smartpointers which based on std.experimental.allocator can be used to store structs/classes. Does automem(or std.experimental.allocator) has support for inherited classes, polymorphism like std::unique_ptr<ISomeInterface> (or base class) in c++? Does Phobos support std.experimental.allocator? Are there another gotchas with "c++ like" memory management way in D? P.S. Sorry for my bad english.
May 01 2020