Loading repository dataβ¦
Loading repository dataβ¦
Parihar07 / repository
π Comprehensive C++ OOP interview preparation guide covering Constructors, Destructors, Access Modifiers, and System Design concepts with detailed examples and explanations.
A comprehensive resource for mastering System Design, Object-Oriented Programming (OOP), and C++ fundamentals for technical interviews.
This repository is designed for:
Complete guide to C++ access control mechanisms.
Covers:
public, protected, private access specifiersIncludes 4 Working Examples:
example1/ - Basic access control & visibilityexample2/ - Protected "through what?" ruleexample3/ - Real-world: Bank account systemexample4/ - Inheritance types (public/protected/private)Deep dive into object lifecycle management in C++.
Covers:
Includes Comprehensive Examples:
01_basic_constructor.cpp - Constructor fundamentals02_parameterized_constructor.cpp - Controlled object creation03_copy_constructor.cpp - Shallow vs Deep copy explained04_constructor_overloading.cpp - Function overloading with 4 examples05_initialization_list.cpp - Performance optimization06_destructor_basics.cpp - Resource cleanup & RAII07_constructor_destructor_order.cpp - Inheritance order & virtual destructors08_special_cases.cpp - Explicit, Singleton, Factory patternsexplicit_explained.cpp - explicit keyword deep divecnstrs.cpp - Working example with Rule of ThreeStatus: Parts 1-8 complete β CORE TOPICS DONE!
Complete guide to class hierarchies, polymorphism, and runtime dispatch in C++.
Covers:
Includes 10 Complete Examples:
01_inheritance_basics.cpp - Fundamental concepts02_types_of_inheritance.cpp - All inheritance types03_access_control.cpp - Access specifier rules04_constructor_destructor_order.cpp - Object lifecycle05_function_overriding.cpp - Method overriding06_virtual_functions.cpp - Polymorphism basics07_abstract_classes.cpp - Pure virtual functions08_multiple_inheritance.cpp - Multiple base classes09_real_world_example.cpp - GUI toolkit demo10_private_inheritance_example.cpp - Advanced patternsvptr_vtable_visual.cpp - Internal mechanism visualizationdiamondprob.cpp - Diamond problem solutionStatus: All 10 parts complete β FULLY DOCUMENTED!
Systems programming perspective on processes, threads, and memory management.
Covers:
Includes 12 Files:
00_single_thread_basics.cpp - Single thread timing demo00_multi_thread_basics.cpp - Work splitting with atomic01_process_vs_thread.cpp - fork vs thread comparison02_ipc_internals.cpp - IPC mechanisms demo02_ipc_pipe_basics.cpp - Pipe-based IPC basics03_process_internals_deep_dive.md - TCB/PCB kernel details04_thread_memory_layout.cpp - Stack/heap/TLS addresses05_thread_vs_process_memory.md - Memory layout comparison06_thread_create_basics.cpp - Simple thread syntax07_process_create_basics.cpp - fork/exec/wait basicsprocess_exp.cpp - Process creation experimentthread_experiments.cpp - Threading experiments playgroundStatus: Complete β Systems perspective!
Complete deep-dive into SOLID design principles with interview preparation materials.
Covers:
Includes 6 Complete Examples:
01_srp_single_responsibility.cpp - Employee, User, Invoice systems02_ocp_open_closed.cpp - Shapes, Payments, Notifications03_lsp_liskov_substitution.cpp - Rectangle/Square, Birds, Accounts04_isp_interface_segregation.cpp - Workers, Printers, Databases05_dip_dependency_inversion.cpp - Dependency injection patterns06_real_world_ecommerce.cpp - Complete e-commerce system with all SOLIDInterview Resources:
CHEAT_SHEET.md - Quick reference for interviewsINTERVIEW_GUIDE.md - Deep interview preparationSTUDY_PLAN.md - 30-min to 1-week study plansStatus: Complete β Interview-ready!
Demonstrating all 4 OOP relationships with real-world Hospital Management System.
Covers:
Project:
hms.cpp - Complete Hospital Management System
Status: Complete β Interview ready! Score: 9/10
Note: Using raw pointers for learning; will upgrade to smart_ptr after RAII topic.
Intro to writing reusable, type-safe code with templates.
Covers (so far):
Includes 2 Examples:
genrics_basic.cpp β function template addnum, class template Box<T>concepts_vs_sfinae.cpp β SFINAE constraints (C++17 compilable) with C++20 concepts documented as theoryπ Read the guide β | βΆοΈ cd generics && make FILE=genrics_basic.cpp run
Next Up: constraints (concepts), specialization, perfect forwarding/move-aware templates
Practical exception-safety patterns with working samples.
Covers:
noexceptIncludes:
01_try_catch_basics.cpp through 10_error_code_vs_exception.cppexperiments.cpp - sandbox for patternsπ Read the guide β
Thread-safety primitives and patterns.
Covers:
Includes:
sync_mutex.cpp, sync_shared_mutex.cppsemaphore_native.cpp, semaphore_cpp20.cppproducer_consumer.cpp, producer_consumer_advanced.cpptraffic_counter.cppπ Read the guide β
Project suites demonstrating different C++ concepts and design patterns.
| Project | Focus | Tech | Score |
|---|---|---|---|
| HMS | All 4 OOP Relationships | Raw Pointers | 9/10 |
| Payment Service | Polymorphism & RAII | Smart Pointers | 9.5/10 |
| System Programming (WIP) | Unix process/thread exercises | C/C++ | WIP |
Key Highlights:
π Explore Projects β | See Comparison Table β
systemdesign/
βββ README.md
βββ acessmodifiers/
β βββ README.md
β βββ example1/
β βββ example2/
β βββ example3/
β βββ example4/
βββ association/
β βββ README.md
β βββ PROBLEM_STATEMENT.md
β βββ 01_association_basics.cpp ... 06_complete_example.cpp
β βββ hms.cpp
β βββ makefile
βββ concurrency/
β βββ README.md
β βββ 00_single_thread_basics.cpp ... 07_process_create_basics.cpp
β βββ 02_ipc_pipe_basics.cpp
β βββ process_exp.cpp
β βββ thread_experiments.cpp
β βββ makefile
βββ constructors-destructors/
β βββ README.md
β βββ 01_basic_constructor.cpp ... 08_special_cases.cpp
β βββ explicit_explained.cpp
β βββ cnstrs.cpp
βββ exceptionalhandling/
β βββ README.md
β βββ 01_try_catch_basics.cpp ... 10_error_code_vs_exception.cpp
β βββ experiments.cpp
β βββ makefile
βββ functorsExecutioners/
β βββ README.md
β βββ fp.cpp
β βββ lambda_explanation.cpp
β βββ lambda_explanation.md
β βββ makefile
βββ generics/
β βββ README.md
β βββ genrics_basic.cpp
β βββ concepts_vs_sfinae.cpp
β βββ makefile
βββ inheritance/
β βββ README.md
β βββ 01_inheritance_basics.cpp ... 10_private_inheritance_example.cpp
β βββ vptr_vtable_visual.cpp
β βββ diamondprob.cpp
βββ projects/
β βββ README.md
β βββ HMS/
β βββ paymentsystem/
β βββ systemprogramming/
βββ synchronization/
βββ README.md
βββ sync_mutex.cpp, sync_shared_mutex.cpp
βββ semaphore_native.cpp, semaphore_cpp20.cpp
βββ producer_consumer.cpp, producer_consumer_advanced.cpp
βββ traffic_counter.cpp
Explore modern C++ callable objects, including: