Temporal Dynamics: Exploring the Intricacies of Object Lifetimes in Modern C++

Riya Bansal

⏱ 60 minute session
beginner
intermediate
advanced
17:00-18:00, Wednesday, 3rd July 2024

Understanding the temporal dynamics of object lifetimes is crucial for crafting robust and efficient C++ code. In this advanced talk, we embark on a journey through the intricate world of special member functions and their profound impact on the lifecycle of objects. We will delve into sophisticated aspects of C++ object management, exploring advanced techniques and best practices that empower developers to optimize resource utilization and design resilient systems.

Topics covered in this talk include:

Rule of Six and Zero: Unravel the intricacies of the Rule of Six and Zero, exploring how custom implementations of special member functions can enhance resource management and eliminate redundant code.

Perfecting Move Semantics: Take move semantics to the next level by mastering perfect forwarding and understanding how it influences the efficiency of your code. Learn techniques to implement flawless move constructors and move assignment operators.

Customized Destructor Strategies: Explore advanced strategies for crafting specialized destructors, addressing scenarios such as resource reclamation, exception safety, and the nuances of object destruction in complex architectures.

Temporal Relationships in Multi-Object Systems: Investigate the temporal relationships between objects in sophisticated systems, examining scenarios where the order of object destruction and construction is critical for maintaining system integrity.

Resource Acquisition Is Initialization (RAII) Refinement: Elevate your RAII skills by exploring advanced patterns and practices that align resource acquisition and release with object lifetimes, ensuring exception safety and resource efficiency.

Smart Pointers and Lifetimes: Delve into the synergy between smart pointers and object lifetimes, examining scenarios where shared ownership, weak pointers, and custom deleters play a crucial role in managing dynamic resources.

By the end of this session, attendees will have gained a deep understanding of advanced object lifetime management, empowering them to design C++ systems that are not only efficient and resilient but also exhibit mastery over the temporal intricacies of special member functions. Join us on this exploration of temporal dynamics and elevate your C++ programming skills to new heights.

Riya Bansal

Riya Bansal is an enthusiastic and passionate Software Engineer at Microsoft. Her major area of expertise include microservices, scalable systems. She has worked on development of data platforms at microsoft built on top of CPP framework. She is also an active promoter of women in Diversity in the technological field to promote budding engineers with meaningful and impactful skills. She has been awarded the Google Women Tech makers Scholarship for her leadership skills and impact on the community of women in tech as well. She is very keen on creating opportunities for underrepresented groups with workplace diversity. She has mentored over 1000+ students in the past. Being on a mission to increase the gender ratio in the tech field