René's URL Explorer Experiment


Title: Object Oriented Programming in C++ | hacking C++

Open Graph Title: Object Oriented Programming in C++

X Title: Object Oriented Programming in C++

Description: The basics of object oriented programming in modern C++: virtual functions, inheritance and design guidelines (Liskov Substitution Principle, Non-Virtual Interface).

Open Graph Description: The basics of object oriented programming in modern C++: virtual functions, inheritance and design guidelines (Liskov Substitution Principle, Non-Virtual Interface).

X Description: The basics of object oriented programming in modern C++: virtual functions, inheritance and design guidelines (Liskov Substitution Principle, Non-Virtual Interface).

Opengraph URL: https://hackingcpp.com/cpp/lang/object_oriented_programming.html

X: @hackingcpp

direct link

Domain: hackingcpp.com

None86400
keywordcpp design custom types oop class aggregation encapsulation inheritance polymorphism interface virtual pure abstract override final base derive derived destructor leak liskov substitution depth deep private public protected nonvirtual non-virtual idiom passing storage pointer reference call indirection dispatch dispatching
authorAndré Müller
date2026-06-08
copyright2019-2026 André Müller
theme-color#0070C0
og:imagehttps://hackingcpp.com/cpp/lang/object_oriented_programming_card.png
og:site_namehacking C++
og:localeen_US
og:typearticle
twitter:cardsummary_large_image
twitter:imagehttps://hackingcpp.com/cpp/lang/object_oriented_programming_card.png
twitter:creator@hackingcpp
hcpp-page-categorycat-slides
hcpp-tagsC++ article beginner-level classes custom-types oop paradigm types

Links:

https://hackingcpp.com/cpp/lang/index.html
hacking C++https://hackingcpp.com/cpp/lang/index.html
Newshttps://hackingcpp.com/cpp/lang/tags/news.html
Beginner's Guide to C++https://hackingcpp.com/cpp/lang/cpp/beginners_guide.html
Standard Library Containershttps://hackingcpp.com/cpp/lang/cpp/std/containers.html
Standard Library Algorithmshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/overview.html
Cheat Sheets / Infographicshttps://hackingcpp.com/cpp/lang/cpp/cheat_sheets.html
All Recipeshttps://hackingcpp.com/cpp/lang/tags/recipe.html
All Articleshttps://hackingcpp.com/cpp/lang/tags/article.html
Online Learninghttps://hackingcpp.com/cpp/lang/dev/web_learning.html
Educational Videoshttps://hackingcpp.com/cpp/lang/cpp/educational_videos.html
Bookshttps://hackingcpp.com/cpp/lang/cpp/books.html
Community Resourceshttps://hackingcpp.com/cpp/lang/cpp/community.html
Tools Ecosystemhttps://hackingcpp.com/cpp/lang/cpp/tools/ecosystem.html
All Resource Listshttps://hackingcpp.com/cpp/lang/tags/list.html
VIM Pluginshttps://hackingcpp.com/cpp/lang/dev/vim_plugins.html
Why & Whohttps://hackingcpp.com/cpp/lang/about.html
Privacyhttps://hackingcpp.com/cpp/lang/privacy.html
https://x.com/hackingcpp
Newshttps://hackingcpp.com/cpp/lang/tags/news.html
Articleshttps://hackingcpp.com/cpp/lang/tags/article.html
Recipeshttps://hackingcpp.com/cpp/lang/tags/recipe.html
Beginner's Guide to C++https://hackingcpp.com/cpp/lang/cpp/beginners_guide.html
Listshttps://hackingcpp.com/cpp/lang/tags/list.html
@hackingcpphttps://x.com/hackingcpp
RSS Feedhttps://hackingcpp.com/feed.rss
Abouthttps://hackingcpp.com/cpp/lang/about.html
Privacyhttps://hackingcpp.com/cpp/lang/privacy.html
Homehttps://hackingcpp.com/cpp/lang/index.html
std::shared_ptrhttps://hackingcpp.com/cpp/lang/cpp/std/shared_ownership.html
Beginner's Guide / Custom Types 2https://hackingcpp.com/cpp/lang/cpp/beginners_guide.html#custom-types-2
Move Semanticshttps://hackingcpp.com/cpp/lang/cpp/lang/move_semantics.html
Beginner's Guidehttps://hackingcpp.com/cpp/lang/cpp/beginners_guide.html#intro
Development Setuphttps://hackingcpp.com/cpp/lang/cpp/tools/beginner_dev_setup.html
Hello Worldhttps://hackingcpp.com/cpp/lang/cpp/hello_world.html
Input & Output (Basics)https://hackingcpp.com/cpp/lang/cpp/std/io_basics.html
Fundamental Typeshttps://hackingcpp.com/cpp/lang/cpp/lang/fundamental_types.html
std::vector Introductionhttps://hackingcpp.com/cpp/lang/cpp/std/vector_intro.html
Enumerationshttps://hackingcpp.com/cpp/lang/cpp/lang/enumerations.html
Control Flow (Basics)https://hackingcpp.com/cpp/lang/cpp/lang/control_flow_basics.html
Type System (Basics)https://hackingcpp.com/cpp/lang/cpp/lang/type_system_basics.html
Functions (Basics)https://hackingcpp.com/cpp/lang/cpp/lang/function_basics.html
Memory (Basics)https://hackingcpp.com/cpp/lang/cpp/lang/memory_basics.html
Strings (Basics)https://hackingcpp.com/cpp/lang/cpp/std/string_basics.html
Referenceshttps://hackingcpp.com/cpp/lang/cpp/lang/references.html
Data Aggregateshttps://hackingcpp.com/cpp/lang/cpp/lang/aggregates.html
Function Call Mechanicshttps://hackingcpp.com/cpp/lang/cpp/lang/function_call_mechanics.html
Command Line Argumentshttps://hackingcpp.com/cpp/lang/cpp/lang/command_line_arguments.html
File Input & Outputhttps://hackingcpp.com/cpp/lang/cpp/std/file_streams.html
Stream Input & Outputhttps://hackingcpp.com/cpp/lang/cpp/std/io_streams.html
Recover From Input Errorshttps://hackingcpp.com/cpp/lang/cpp/recipe/istream_recover_from_errors.html
Basic Custom Types / Classeshttps://hackingcpp.com/cpp/lang/cpp/lang/custom_type_basics.html
Pointershttps://hackingcpp.com/cpp/lang/cpp/lang/pointers.html
Destructorshttps://hackingcpp.com/cpp/lang/cpp/lang/destructors.html
Exceptionshttps://hackingcpp.com/cpp/lang/cpp/lang/exceptions.html
Basics: Warnings & Testshttps://hackingcpp.com/cpp/lang/cpp/diagnostics.html
Debugging With gdbhttps://hackingcpp.com/cpp/lang/cpp/tools/gdb_intro.html
Address Sanitizerhttps://hackingcpp.com/cpp/lang/cpp/tools/asan.html
Undefined Behavior Sanitizerhttps://hackingcpp.com/cpp/lang/cpp/tools/ubsan.html
valgrindhttps://hackingcpp.com/cpp/lang/cpp/tools/valgrind.html
Iteratorshttps://hackingcpp.com/cpp/lang/cpp/std/iterators_intro.html
Sequence Containershttps://hackingcpp.com/cpp/lang/cpp/std/sequence_containers.html
Sequence Viewshttps://hackingcpp.com/cpp/lang/cpp/std/sequence_views.html
Associative Containershttps://hackingcpp.com/cpp/lang/cpp/std/associative_containers.html
Algorithms Introductionhttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/intro.html
Container Traversalhttps://hackingcpp.com/cpp/lang/cpp/std/container_traversal.html
Minimum / Maximumhttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/min_max.html
Existence Querieshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/existence_queries.html
Finding Elementshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/finding.html
Comparing Rangeshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/comparing_ranges.html
Function Objectshttps://hackingcpp.com/cpp/lang/cpp/design/function_objects.html
Lambdas (Basics)https://hackingcpp.com/cpp/lang/cpp/lang/lambda_basics.html
Copying Rangeshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/copying.html
Sequence Reorderinghttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/reordering.html
Changing Elementshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/element_modification.html
Removing Elementshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/removing.html
Numeric Operationshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/numeric.html
Sorted Sequence Operationshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/sorted_sequence_operations.html
Binary Heap Operationshttps://hackingcpp.com/cpp/lang/cpp/std/algorithms/heap_operations.html
Composable Range Viewshttps://hackingcpp.com/cpp/lang/cpp/std/range_views_intro.html
Special Containershttps://hackingcpp.com/cpp/lang/cpp/std/special_containers.html
Special Iteratorshttps://hackingcpp.com/cpp/lang/cpp/std/special_iterators.html
Random Numbershttps://hackingcpp.com/cpp/lang/cpp/std/random/overview.html
Separate Compilationhttps://hackingcpp.com/cpp/lang/cpp/lang/separate_compilation.html
Namespaceshttps://hackingcpp.com/cpp/lang/cpp/lang/namespaces.html
Friendshttps://hackingcpp.com/cpp/lang/cpp/lang/friends.html
Comparisonshttps://hackingcpp.com/cpp/lang/cpp/lang/comparisons.html
Literal Typeshttps://hackingcpp.com/cpp/lang/cpp/design/literal_types.html
Arithmetic Typeshttps://hackingcpp.com/cpp/lang/cpp/design/arithmetic_types.html
Unique Resource Ownershiphttps://hackingcpp.com/cpp/lang/cpp/std/unique_ownership.html
Node-Based Data Structureshttps://hackingcpp.com/cpp/lang/cpp/design/node_based_data_structures.html
Special Class Membershttps://hackingcpp.com/cpp/lang/cpp/lang/special_class_members.html
Shared Resource Ownershiphttps://hackingcpp.com/cpp/lang/cpp/std/shared_ownership.html
Object Oriented Programminghttps://hackingcpp.com/cpp/lang/cpp/lang/object_oriented_programming.html
Move Semanticshttps://hackingcpp.com/cpp/lang/cpp/lang/move_semantics.html
Templateshttps://hackingcpp.com/cpp/lang/cpp/lang/templates.html
Type Castshttps://hackingcpp.com/cpp/lang/cpp/lang/type_casts.html
Type Deductionhttps://hackingcpp.com/cpp/lang/cpp/lang/type_deduction.html
Type Traitshttps://hackingcpp.com/cpp/lang/cpp/std/type_traits.html
Perfect Forwardinghttps://hackingcpp.com/cpp/lang/cpp/lang/perfect_forwarding.html
Concepts & Constrained Templateshttps://hackingcpp.com/cpp/lang/cpp/lang/concepts.html
Pointer Arithmetichttps://hackingcpp.com/cpp/lang/cpp/lang/pointer_arithmetic.html
C-Style Arrayshttps://hackingcpp.com/cpp/lang/cpp/lang/c_arrays.html
Manual Memory Managementhttps://hackingcpp.com/cpp/lang/cpp/lang/manual_memory_management.html
Allocatorshttps://hackingcpp.com/cpp/lang/cpp/design/allocators.html
Design Principleshttps://hackingcpp.com/cpp/lang/cpp/design/principles.html
Design Study: Function Interfaceshttps://hackingcpp.com/cpp/lang/cpp/design/function_interface_example1.html
Design Study: Angle-Axis Rotationhttps://hackingcpp.com/cpp/lang/cpp/design/angle_axis_rotation.html
Traversal Approacheshttps://hackingcpp.com/cpp/lang/cpp/design/traversal_approaches.html
The PIMPL Idiomhttps://hackingcpp.com/cpp/lang/cpp/design/pimpl.html
std::shared_ptrhttps://hackingcpp.com/cpp/lang/cpp/std/shared_ownership.html
Beginner's Guide / Custom Types 2https://hackingcpp.com/cpp/lang/cpp/beginners_guide.html#custom-types-2
Move Semanticshttps://hackingcpp.com/cpp/lang/cpp/lang/move_semantics.html
Back to Basics: Object-Oriented Programming  (Rainer Grimm, 2021)https://youtu.be/Ou5WsJzn7Ws
Inheritance  (CopperSpice C++)https://youtu.be/151jdcYTI3M
Intro to the C++ Object Model  (Richard Powell, 2015)https://youtu.be/iLiDezv_Frk
Virtual Inheritance: Probably Not What You Think It Is (C++ Weekly)https://youtu.be/vZPkYvsqQxQ
Multiple Inheritance problem in C++  (Bo Qian)https://youtu.be/7APovvvftQs
C++ Is Not An Object Oriented Language (C++ Weekly)https://youtu.be/AUT201AXeJg
Back to Basics: Virtual Dispatch and its Alternatives  (Levi Inbal, 2019)https://youtu.be/jBnIMEb2GhA
Back to Basics: Designing Classes [1/2]  (Klaus Iglberger, 2021)https://youtu.be/motLOioLJfg
Back to Basics: Designing Classes [2/2]  (Klaus Iglberger, 2021)https://youtu.be/O65lEiYkkbc
Value-oriented Design in an Object-oriented System  (Juan Pedro Bolivar Puente, 2021)https://youtu.be/67MmJSw4bxo
Runtime Polymorphism: Back to the Basics  (Louis Dionne, 2018)https://youtu.be/OtU51Ytfe04
Design Patterns and Modern C++  (JetBrains)https://youtu.be/j9arNRRoPe8
Singleton Design Pattern  (Code Blacksmith)https://youtu.be/2SIpresDYVc
Strategy Design Pattern  (Code Blacksmith)https://youtu.be/z84cggFUvCs
Builder Design Pattern  (Code Blacksmith)https://youtu.be/s8S1X-p3TtI
Design Patterns - Facts and Misconceptions  (Klaus Iglberger)https://youtu.be/u5EAJTHPJN8
Statistical scientific programming OO patterns: accumulators  (Olivia Quinet, 2017)https://youtu.be/IwvA7oExmSo
Design Patterns - Facts and Misconceptions  (Klaus Iglberger)https://youtu.be/u5EAJTHPJN8
The Factory Pattern  (Mike Shah, 2021)https://youtu.be/4xrNtB60g0g
C++https://hackingcpp.com/cpp/lang/tags/c++.html
articlehttps://hackingcpp.com/cpp/lang/tags/article.html
beginner-levelhttps://hackingcpp.com/cpp/lang/tags/beginner-level.html
classeshttps://hackingcpp.com/cpp/lang/tags/classes.html
custom-typeshttps://hackingcpp.com/cpp/lang/tags/custom-types.html
oophttps://hackingcpp.com/cpp/lang/tags/oop.html
paradigmhttps://hackingcpp.com/cpp/lang/tags/paradigm.html
typeshttps://hackingcpp.com/cpp/lang/tags/types.html
https://x.com/share?url=https://hackingcpp.com/cpp/lang/object_oriented_programming.html
http://www.reddit.com/submit?url=https://hackingcpp.com/cpp/lang/object_oriented_programming.html
https://www.facebook.com/sharer/sharer.php?u=https://hackingcpp.com/cpp/lang/object_oriented_programming.html
https://www.linkedin.com/sharing/share-offsite/?url=https://hackingcpp.com/cpp/lang/object_oriented_programming.html
Homehttps://hackingcpp.com/cpp/lang/index.html
Newshttps://hackingcpp.com/cpp/lang/tags/news.html
Articleshttps://hackingcpp.com/cpp/lang/tags/article.html
Recipeshttps://hackingcpp.com/cpp/lang/tags/recipe.html
Guideshttps://hackingcpp.com/cpp/lang/tags/guide.html
Listshttps://hackingcpp.com/cpp/lang/tags/list.html
Abouthttps://hackingcpp.com/cpp/lang/about.html
Privacyhttps://hackingcpp.com/cpp/lang/privacy.html
on Xhttps://x.com/hackingcpp
RSS Feedhttps://hackingcpp.com/feed.rss
https://optunum.com
https://optunum.com/umbilay/overview
Tagshttps://hackingcpp.com/cpp/lang/tags.html
algorithmshttps://hackingcpp.com/cpp/lang/tags/algorithms.html
allocatorshttps://hackingcpp.com/cpp/lang/tags/allocators.html
arrayshttps://hackingcpp.com/cpp/lang/tags/arrays.html
articlehttps://hackingcpp.com/cpp/lang/tags/article.html
beginner-levelhttps://hackingcpp.com/cpp/lang/tags/beginner-level.html
blogshttps://hackingcpp.com/cpp/lang/tags/blogs.html
bookshttps://hackingcpp.com/cpp/lang/tags/books.html
build-systemshttps://hackingcpp.com/cpp/lang/tags/build-systems.html
C++https://hackingcpp.com/cpp/lang/tags/c++.html
C++-standardizationhttps://hackingcpp.com/cpp/lang/tags/c++-standardization.html
C++11https://hackingcpp.com/cpp/lang/tags/c++11.html
C++14https://hackingcpp.com/cpp/lang/tags/c++14.html
C++17https://hackingcpp.com/cpp/lang/tags/c++17.html
C++20https://hackingcpp.com/cpp/lang/tags/c++20.html
C++23https://hackingcpp.com/cpp/lang/tags/c++23.html
C++98https://hackingcpp.com/cpp/lang/tags/c++98.html
C-stylehttps://hackingcpp.com/cpp/lang/tags/c-style.html
C-vs-C++https://hackingcpp.com/cpp/lang/tags/c-vs-c++.html
castshttps://hackingcpp.com/cpp/lang/tags/casts.html
classeshttps://hackingcpp.com/cpp/lang/tags/classes.html
code-editorshttps://hackingcpp.com/cpp/lang/tags/code-editors.html
code-formattinghttps://hackingcpp.com/cpp/lang/tags/code-formatting.html
command-linehttps://hackingcpp.com/cpp/lang/tags/command-line.html
communityhttps://hackingcpp.com/cpp/lang/tags/community.html
comparisonshttps://hackingcpp.com/cpp/lang/tags/comparisons.html
compilershttps://hackingcpp.com/cpp/lang/tags/compilers.html
conceptshttps://hackingcpp.com/cpp/lang/tags/concepts.html
conferenceshttps://hackingcpp.com/cpp/lang/tags/conferences.html
consthttps://hackingcpp.com/cpp/lang/tags/const.html
constexprhttps://hackingcpp.com/cpp/lang/tags/constexpr.html
containershttps://hackingcpp.com/cpp/lang/tags/containers.html
control-flowhttps://hackingcpp.com/cpp/lang/tags/control-flow.html
CUDAhttps://hackingcpp.com/cpp/lang/tags/cuda.html
custom-typeshttps://hackingcpp.com/cpp/lang/tags/custom-types.html
data-structureshttps://hackingcpp.com/cpp/lang/tags/data-structures.html
debugginghttps://hackingcpp.com/cpp/lang/tags/debugging.html
designhttps://hackingcpp.com/cpp/lang/tags/design.html
diagnosticshttps://hackingcpp.com/cpp/lang/tags/diagnostics.html
exceptionshttps://hackingcpp.com/cpp/lang/tags/exceptions.html
file-iohttps://hackingcpp.com/cpp/lang/tags/file-io.html
findhttps://hackingcpp.com/cpp/lang/tags/find.html
functional-proghttps://hackingcpp.com/cpp/lang/tags/functional-prog.html
functionshttps://hackingcpp.com/cpp/lang/tags/functions.html
galleryhttps://hackingcpp.com/cpp/lang/tags/gallery.html
generic-proghttps://hackingcpp.com/cpp/lang/tags/generic-prog.html
groupshttps://hackingcpp.com/cpp/lang/tags/groups.html
guidehttps://hackingcpp.com/cpp/lang/tags/guide.html
guidelineshttps://hackingcpp.com/cpp/lang/tags/guidelines.html
hash-maphttps://hackingcpp.com/cpp/lang/tags/hash-map.html
hash-sethttps://hackingcpp.com/cpp/lang/tags/hash-set.html
hashinghttps://hackingcpp.com/cpp/lang/tags/hashing.html
header-fileshttps://hackingcpp.com/cpp/lang/tags/header-files.html
heaphttps://hackingcpp.com/cpp/lang/tags/heap.html
ideshttps://hackingcpp.com/cpp/lang/tags/ides.html
idiomhttps://hackingcpp.com/cpp/lang/tags/idiom.html
initializationhttps://hackingcpp.com/cpp/lang/tags/initialization.html
inputhttps://hackingcpp.com/cpp/lang/tags/input.html
iohttps://hackingcpp.com/cpp/lang/tags/io.html
iostreamshttps://hackingcpp.com/cpp/lang/tags/iostreams.html
iteratorshttps://hackingcpp.com/cpp/lang/tags/iterators.html
lambdahttps://hackingcpp.com/cpp/lang/tags/lambda.html
language-mechanismhttps://hackingcpp.com/cpp/lang/tags/language-mechanism.html
language-referenceshttps://hackingcpp.com/cpp/lang/tags/language-references.html
learninghttps://hackingcpp.com/cpp/lang/tags/learning.html
librarieshttps://hackingcpp.com/cpp/lang/tags/libraries.html
linkerhttps://hackingcpp.com/cpp/lang/tags/linker.html
listhttps://hackingcpp.com/cpp/lang/tags/list.html
low-levelhttps://hackingcpp.com/cpp/lang/tags/low-level.html
maphttps://hackingcpp.com/cpp/lang/tags/map.html
memoryhttps://hackingcpp.com/cpp/lang/tags/memory.html
modern-C++https://hackingcpp.com/cpp/lang/tags/modern-c++.html
move-semanticshttps://hackingcpp.com/cpp/lang/tags/move-semantics.html
newshttps://hackingcpp.com/cpp/lang/tags/news.html
oophttps://hackingcpp.com/cpp/lang/tags/oop.html
organizationshttps://hackingcpp.com/cpp/lang/tags/organizations.html
outputhttps://hackingcpp.com/cpp/lang/tags/output.html
package-managerhttps://hackingcpp.com/cpp/lang/tags/package-manager.html
paradigmhttps://hackingcpp.com/cpp/lang/tags/paradigm.html
patternhttps://hackingcpp.com/cpp/lang/tags/pattern.html
peoplehttps://hackingcpp.com/cpp/lang/tags/people.html
performancehttps://hackingcpp.com/cpp/lang/tags/performance.html
podcastshttps://hackingcpp.com/cpp/lang/tags/podcasts.html
pointershttps://hackingcpp.com/cpp/lang/tags/pointers.html
preprocessorhttps://hackingcpp.com/cpp/lang/tags/preprocessor.html
profilinghttps://hackingcpp.com/cpp/lang/tags/profiling.html
Pythonhttps://hackingcpp.com/cpp/lang/tags/python.html
randomnesshttps://hackingcpp.com/cpp/lang/tags/randomness.html
rangeshttps://hackingcpp.com/cpp/lang/tags/ranges.html
recipehttps://hackingcpp.com/cpp/lang/tags/recipe.html
referenceshttps://hackingcpp.com/cpp/lang/tags/references.html
sethttps://hackingcpp.com/cpp/lang/tags/set.html
social-mediahttps://hackingcpp.com/cpp/lang/tags/social-media.html
stackhttps://hackingcpp.com/cpp/lang/tags/stack.html
standardizationhttps://hackingcpp.com/cpp/lang/tags/standardization.html
std-algorithmshttps://hackingcpp.com/cpp/lang/tags/std-algorithms.html
std-containershttps://hackingcpp.com/cpp/lang/tags/std-containers.html
std-libraryhttps://hackingcpp.com/cpp/lang/tags/std-library.html
std-macroshttps://hackingcpp.com/cpp/lang/tags/std-macros.html
std-vectorhttps://hackingcpp.com/cpp/lang/tags/std-vector.html
STLhttps://hackingcpp.com/cpp/lang/tags/stl.html
stringshttps://hackingcpp.com/cpp/lang/tags/strings.html
stylehttps://hackingcpp.com/cpp/lang/tags/style.html
tastehttps://hackingcpp.com/cpp/lang/tags/taste.html
templateshttps://hackingcpp.com/cpp/lang/tags/templates.html
testinghttps://hackingcpp.com/cpp/lang/tags/testing.html
toolchainhttps://hackingcpp.com/cpp/lang/tags/toolchain.html
toolshttps://hackingcpp.com/cpp/lang/tags/tools.html
traversalhttps://hackingcpp.com/cpp/lang/tags/traversal.html
typeshttps://hackingcpp.com/cpp/lang/tags/types.html
userhttps://hackingcpp.com/cpp/lang/tags/user.html
version-controlhttps://hackingcpp.com/cpp/lang/tags/version-control.html
viewshttps://hackingcpp.com/cpp/lang/tags/views.html
VIMhttps://hackingcpp.com/cpp/lang/tags/vim.html
VIM-pluginshttps://hackingcpp.com/cpp/lang/tags/vim-plugins.html
warningshttps://hackingcpp.com/cpp/lang/tags/warnings.html
websiteshttps://hackingcpp.com/cpp/lang/tags/websites.html

Viewport: width=device-width, initial-scale=1.0


URLs of crawlers that visited me.