Show how to use format xtd::format class with memory addresses (pointers).
#include <xtd/xtd>
auto main() -> int {
auto ptr = static_cast<int*>(nullptr);
console::out << string::format("{}", ptr) << environment::new_line;
ptr = new int(42);
console::out << string::format("0x{:x}", ptr) << environment::new_line;
console::out << string::format("{}", *ptr) << environment::new_line;
delete ptr;
console::out << string::format("{}", sptr) << environment::new_line;
sptr = new_sptr<int>(42);
console::out << string::format("0x{:x}", sptr) << environment::new_line;
console::out << string::format("{}", *sptr) << environment::new_line;
console::out << string::format("{}", uptr) << environment::new_line;
uptr = new_uptr<int>(42);
console::out << string::format("0x{:x}", uptr) << environment::new_line;
console::out << string::format("{}", *uptr) << environment::new_line;
}
xtd::shared_ptr_object< type_t > sptr
The xtd::sptr object is a shared pointer.
Definition sptr.hpp:25
xtd::unique_ptr_object< type_t > uptr
The xtd::uptr object is a unique pointer.
Definition uptr.hpp:25