Maj terminée. Pour consulter la release notes associée voici le lien :
https://about.gitlab.com/releases/2021/07/07/critical-security-release-gitlab-14-0-4-released/

Commit 3f7a3230 authored by GILLES Sebastien's avatar GILLES Sebastien
Browse files

Update table of contents (through Jupyter NOT lab notebook...).

parent 1d633912
......@@ -14,7 +14,7 @@
},
"source": [
"<h1>Table of contents<span class=\"tocSkip\"></span></h1>\n",
"<div class=\"toc\"><ul class=\"toc-item\"><li><span><a href=\"#Introduction-to-inheritance\" data-toc-modified-id=\"Introduction-to-inheritance-1\">Introduction to inheritance</a></span><ul class=\"toc-item\"><li><span><a href=\"#Multiple-layer-of-inheritance\" data-toc-modified-id=\"Multiple-layer-of-inheritance-1.1\">Multiple layer of inheritance</a></span></li><li><span><a href=\"#Multiple-inheritance\" data-toc-modified-id=\"Multiple-inheritance-1.2\">Multiple inheritance</a></span></li><li><span><a href=\"#Diamond-inheritance\" data-toc-modified-id=\"Diamond-inheritance-1.3\">Diamond inheritance</a></span></li></ul></li><li><span><a href=\"#Public-inheritance,-private-inheritance-and-composition\" data-toc-modified-id=\"Public-inheritance,-private-inheritance-and-composition-2\">Public inheritance, private inheritance and composition</a></span><ul class=\"toc-item\"><li><span><a href=\"#IS-A-relationship-of-public-inheritance\" data-toc-modified-id=\"IS-A-relationship-of-public-inheritance-2.1\">IS-A relationship of public inheritance</a></span></li><li><span><a href=\"#IS-IMPLEMENTED-IN-TERMS-OF-relationship-of-private-inheritance\" data-toc-modified-id=\"IS-IMPLEMENTED-IN-TERMS-OF-relationship-of-private-inheritance-2.2\">IS-IMPLEMENTED-IN-TERMS-OF relationship of private inheritance</a></span></li><li><span><a href=\"#CONTAINS-A-relationship-of-composition\" data-toc-modified-id=\"CONTAINS-A-relationship-of-composition-2.3\">CONTAINS-A relationship of composition</a></span></li><li><span><a href=\"#Private-inheritance-vs-composition\" data-toc-modified-id=\"Private-inheritance-vs-composition-2.4\">Private inheritance vs composition</a></span></li></ul></li><li><span><a href=\"#Protected-status\" data-toc-modified-id=\"Protected-status-3\">Protected status</a></span></li><li><span><a href=\"#Polymorphism\" data-toc-modified-id=\"Polymorphism-4\">Polymorphism</a></span><ul class=\"toc-item\"><li><span><a href=\"#Naïve-approach-to-underline-the-need\" data-toc-modified-id=\"Naïve-approach-to-underline-the-need-4.1\">Naïve approach to underline the need</a></span></li><li><span><a href=\"#virtual-keyword\" data-toc-modified-id=\"virtual-keyword-4.2\"><code>virtual</code> keyword</a></span></li><li><span><a href=\"#virtual-work-only-with-pointers-or-references\" data-toc-modified-id=\"virtual-work-only-with-pointers-or-references-4.3\"><code>virtual</code> work only with pointers or references</a></span></li><li><span><a href=\"#Abstract-class-and-pure-virtual-methods\" data-toc-modified-id=\"Abstract-class-and-pure-virtual-methods-4.4\">Abstract class and pure virtual methods</a></span></li><li><span><a href=\"#override-keyword\" data-toc-modified-id=\"override-keyword-4.5\">override keyword</a></span></li><li><span><a href=\"#Cost-of-virtuality\" data-toc-modified-id=\"Cost-of-virtuality-4.6\">Cost of virtuality</a></span></li></ul></li><li><span><a href=\"#dynamic_cast\" data-toc-modified-id=\"dynamic_cast-5\"><code>dynamic_cast</code></a></span></li><li><span><a href=\"#final-keyword\" data-toc-modified-id=\"final-keyword-6\"><code>final</code> keyword</a></span></li><li><span><a href=\"#Virtual-destructor-and-the-slicing-effect\" data-toc-modified-id=\"Virtual-destructor-and-the-slicing-effect-7\">Virtual destructor and the slicing effect</a></span><ul class=\"toc-item\"><li><span><a href=\"#Good-practice:-should-my-destructor-be-virtual?\" data-toc-modified-id=\"Good-practice:-should-my-destructor-be-virtual?-7.1\">Good practice: should my destructor be virtual?</a></span></li></ul></li><li><span><a href=\"#Good-practice:-never-call-a-virtual-method-in-a-constructor\" data-toc-modified-id=\"Good-practice:-never-call-a-virtual-method-in-a-constructor-8\">Good practice: never call a virtual method in a constructor</a></span></li></ul></div>"
"<div class=\"toc\"><ul class=\"toc-item\"><li><span><a href=\"#Introduction-to-inheritance\" data-toc-modified-id=\"Introduction-to-inheritance-1\">Introduction to inheritance</a></span><ul class=\"toc-item\"><li><span><a href=\"#Multiple-layer-of-inheritance\" data-toc-modified-id=\"Multiple-layer-of-inheritance-1.1\">Multiple layer of inheritance</a></span></li><li><span><a href=\"#Multiple-inheritance\" data-toc-modified-id=\"Multiple-inheritance-1.2\">Multiple inheritance</a></span></li><li><span><a href=\"#Diamond-inheritance\" data-toc-modified-id=\"Diamond-inheritance-1.3\">Diamond inheritance</a></span></li></ul></li><li><span><a href=\"#Public-inheritance,-private-inheritance-and-composition\" data-toc-modified-id=\"Public-inheritance,-private-inheritance-and-composition-2\">Public inheritance, private inheritance and composition</a></span><ul class=\"toc-item\"><li><span><a href=\"#IS-A-relationship-of-public-inheritance\" data-toc-modified-id=\"IS-A-relationship-of-public-inheritance-2.1\">IS-A relationship of public inheritance</a></span></li><li><span><a href=\"#IS-IMPLEMENTED-IN-TERMS-OF-relationship-of-private-inheritance\" data-toc-modified-id=\"IS-IMPLEMENTED-IN-TERMS-OF-relationship-of-private-inheritance-2.2\">IS-IMPLEMENTED-IN-TERMS-OF relationship of private inheritance</a></span></li><li><span><a href=\"#CONTAINS-A-relationship-of-composition\" data-toc-modified-id=\"CONTAINS-A-relationship-of-composition-2.3\">CONTAINS-A relationship of composition</a></span></li><li><span><a href=\"#Private-inheritance-vs-composition\" data-toc-modified-id=\"Private-inheritance-vs-composition-2.4\">Private inheritance vs composition</a></span></li></ul></li><li><span><a href=\"#Protected-status\" data-toc-modified-id=\"Protected-status-3\">Protected status</a></span></li></ul></div>"
]
},
{
......
......@@ -14,7 +14,7 @@
},
"source": [
"<h1>Table of contents<span class=\"tocSkip\"></span></h1>\n",
"<div class=\"toc\"><ul class=\"toc-item\"><li><span><a href=\"#Introduction-to-inheritance\" data-toc-modified-id=\"Introduction-to-inheritance-1\">Introduction to inheritance</a></span><ul class=\"toc-item\"><li><span><a href=\"#Multiple-layer-of-inheritance\" data-toc-modified-id=\"Multiple-layer-of-inheritance-1.1\">Multiple layer of inheritance</a></span></li><li><span><a href=\"#Multiple-inheritance\" data-toc-modified-id=\"Multiple-inheritance-1.2\">Multiple inheritance</a></span></li><li><span><a href=\"#Diamond-inheritance\" data-toc-modified-id=\"Diamond-inheritance-1.3\">Diamond inheritance</a></span></li></ul></li><li><span><a href=\"#Public-inheritance,-private-inheritance-and-composition\" data-toc-modified-id=\"Public-inheritance,-private-inheritance-and-composition-2\">Public inheritance, private inheritance and composition</a></span><ul class=\"toc-item\"><li><span><a href=\"#IS-A-relationship-of-public-inheritance\" data-toc-modified-id=\"IS-A-relationship-of-public-inheritance-2.1\">IS-A relationship of public inheritance</a></span></li><li><span><a href=\"#IS-IMPLEMENTED-IN-TERMS-OF-relationship-of-private-inheritance\" data-toc-modified-id=\"IS-IMPLEMENTED-IN-TERMS-OF-relationship-of-private-inheritance-2.2\">IS-IMPLEMENTED-IN-TERMS-OF relationship of private inheritance</a></span></li><li><span><a href=\"#CONTAINS-A-relationship-of-composition\" data-toc-modified-id=\"CONTAINS-A-relationship-of-composition-2.3\">CONTAINS-A relationship of composition</a></span></li><li><span><a href=\"#Private-inheritance-vs-composition\" data-toc-modified-id=\"Private-inheritance-vs-composition-2.4\">Private inheritance vs composition</a></span></li></ul></li><li><span><a href=\"#Protected-status\" data-toc-modified-id=\"Protected-status-3\">Protected status</a></span></li><li><span><a href=\"#Polymorphism\" data-toc-modified-id=\"Polymorphism-4\">Polymorphism</a></span><ul class=\"toc-item\"><li><span><a href=\"#Naïve-approach-to-underline-the-need\" data-toc-modified-id=\"Naïve-approach-to-underline-the-need-4.1\">Naïve approach to underline the need</a></span></li><li><span><a href=\"#virtual-keyword\" data-toc-modified-id=\"virtual-keyword-4.2\"><code>virtual</code> keyword</a></span></li><li><span><a href=\"#virtual-work-only-with-pointers-or-references\" data-toc-modified-id=\"virtual-work-only-with-pointers-or-references-4.3\"><code>virtual</code> work only with pointers or references</a></span></li><li><span><a href=\"#Abstract-class-and-pure-virtual-methods\" data-toc-modified-id=\"Abstract-class-and-pure-virtual-methods-4.4\">Abstract class and pure virtual methods</a></span></li><li><span><a href=\"#override-keyword\" data-toc-modified-id=\"override-keyword-4.5\">override keyword</a></span></li><li><span><a href=\"#Cost-of-virtuality\" data-toc-modified-id=\"Cost-of-virtuality-4.6\">Cost of virtuality</a></span></li></ul></li><li><span><a href=\"#dynamic_cast\" data-toc-modified-id=\"dynamic_cast-5\"><code>dynamic_cast</code></a></span></li><li><span><a href=\"#final-keyword\" data-toc-modified-id=\"final-keyword-6\"><code>final</code> keyword</a></span></li><li><span><a href=\"#Virtual-destructor-and-the-slicing-effect\" data-toc-modified-id=\"Virtual-destructor-and-the-slicing-effect-7\">Virtual destructor and the slicing effect</a></span><ul class=\"toc-item\"><li><span><a href=\"#Good-practice:-should-my-destructor-be-virtual?\" data-toc-modified-id=\"Good-practice:-should-my-destructor-be-virtual?-7.1\">Good practice: should my destructor be virtual?</a></span></li></ul></li><li><span><a href=\"#Good-practice:-never-call-a-virtual-method-in-a-constructor\" data-toc-modified-id=\"Good-practice:-never-call-a-virtual-method-in-a-constructor-8\">Good practice: never call a virtual method in a constructor</a></span></li></ul></div>"
"<div class=\"toc\"><ul class=\"toc-item\"><li><span><a href=\"#Polymorphism\" data-toc-modified-id=\"Polymorphism-1\">Polymorphism</a></span><ul class=\"toc-item\"><li><span><a href=\"#Naïve-approach-to-underline-the-need\" data-toc-modified-id=\"Naïve-approach-to-underline-the-need-1.1\">Naïve approach to underline the need</a></span></li><li><span><a href=\"#virtual-keyword\" data-toc-modified-id=\"virtual-keyword-1.2\"><code>virtual</code> keyword</a></span></li><li><span><a href=\"#virtual-work-only-with-pointers-or-references\" data-toc-modified-id=\"virtual-work-only-with-pointers-or-references-1.3\"><code>virtual</code> work only with pointers or references</a></span></li><li><span><a href=\"#Abstract-class-and-pure-virtual-methods\" data-toc-modified-id=\"Abstract-class-and-pure-virtual-methods-1.4\">Abstract class and pure virtual methods</a></span></li><li><span><a href=\"#override-keyword\" data-toc-modified-id=\"override-keyword-1.5\">override keyword</a></span></li><li><span><a href=\"#Cost-of-virtuality\" data-toc-modified-id=\"Cost-of-virtuality-1.6\">Cost of virtuality</a></span></li></ul></li><li><span><a href=\"#dynamic_cast\" data-toc-modified-id=\"dynamic_cast-2\"><code>dynamic_cast</code></a></span></li><li><span><a href=\"#final-keyword\" data-toc-modified-id=\"final-keyword-3\"><code>final</code> keyword</a></span></li><li><span><a href=\"#Virtual-destructor-and-the-slicing-effect\" data-toc-modified-id=\"Virtual-destructor-and-the-slicing-effect-4\">Virtual destructor and the slicing effect</a></span><ul class=\"toc-item\"><li><span><a href=\"#Good-practice:-should-my-destructor-be-virtual?\" data-toc-modified-id=\"Good-practice:-should-my-destructor-be-virtual?-4.1\">Good practice: should my destructor be virtual?</a></span></li></ul></li><li><span><a href=\"#Good-practice:-never-call-a-virtual-method-in-a-constructor\" data-toc-modified-id=\"Good-practice:-never-call-a-virtual-method-in-a-constructor-5\">Good practice: never call a virtual method in a constructor</a></span></li></ul></div>"
]
},
{
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment