Modern-CPP-Programming/htmls/10.Object_Oriented_II.html
2026-01-06 09:09:47 -08:00

1818 lines
928 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<!-- Created by pdf2htmlEX (https://github.com/pdf2htmlEX/pdf2htmlEX) -->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8"/>
<meta name="generator" content="pdf2htmlEX"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<style type="text/css">
/*!
* Base CSS for pdf2htmlEX
* Copyright 2012,2013 Lu Wang <coolwanglu@gmail.com>
* https://github.com/pdf2htmlEX/pdf2htmlEX/blob/master/share/LICENSE
*/#sidebar{position:absolute;top:0;left:0;bottom:0;width:250px;padding:0;margin:0;overflow:auto}#page-container{position:absolute;top:0;left:0;margin:0;padding:0;border:0}@media screen{#sidebar.opened+#page-container{left:250px}#page-container{bottom:0;right:0;overflow:auto}.loading-indicator{display:none}.loading-indicator.active{display:block;position:absolute;width:64px;height:64px;top:50%;left:50%;margin-top:-32px;margin-left:-32px}.loading-indicator img{position:absolute;top:0;left:0;bottom:0;right:0}}@media print{@page{margin:0}html{margin:0}body{margin:0;-webkit-print-color-adjust:exact}#sidebar{display:none}#page-container{width:auto;height:auto;overflow:visible;background-color:transparent}.d{display:none}}.pf{position:relative;background-color:white;overflow:hidden;margin:0;border:0}.pc{position:absolute;border:0;padding:0;margin:0;top:0;left:0;width:100%;height:100%;overflow:hidden;display:block;transform-origin:0 0;-ms-transform-origin:0 0;-webkit-transform-origin:0 0}.pc.opened{display:block}.bf{position:absolute;border:0;margin:0;top:0;bottom:0;width:100%;height:100%;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;user-select:none}.bi{position:absolute;border:0;margin:0;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;user-select:none}@media print{.pf{margin:0;box-shadow:none;page-break-after:always;page-break-inside:avoid}@-moz-document url-prefix(){.pf{overflow:visible;border:1px solid #fff}.pc{overflow:visible}}}.c{position:absolute;border:0;padding:0;margin:0;overflow:hidden;display:block}.t{position:absolute;white-space:pre;font-size:1px;transform-origin:0 100%;-ms-transform-origin:0 100%;-webkit-transform-origin:0 100%;unicode-bidi:bidi-override;-moz-font-feature-settings:"liga" 0}.t:after{content:''}.t:before{content:'';display:inline-block}.t span{position:relative;unicode-bidi:bidi-override}._{display:inline-block;color:transparent;z-index:-1}::selection{background:rgba(127,255,255,0.4)}::-moz-selection{background:rgba(127,255,255,0.4)}.pi{display:none}.d{position:absolute;transform-origin:0 100%;-ms-transform-origin:0 100%;-webkit-transform-origin:0 100%}.it{border:0;background-color:rgba(255,255,255,0.0)}.ir:hover{cursor:pointer}</style>
<style type="text/css">
/*!
* Fancy styles for pdf2htmlEX
* Copyright 2012,2013 Lu Wang <coolwanglu@gmail.com>
* https://github.com/pdf2htmlEX/pdf2htmlEX/blob/master/share/LICENSE
*/@keyframes fadein{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadein{from{opacity:0}to{opacity:1}}@keyframes swing{0{transform:rotate(0)}10%{transform:rotate(0)}90%{transform:rotate(720deg)}100%{transform:rotate(720deg)}}@-webkit-keyframes swing{0{-webkit-transform:rotate(0)}10%{-webkit-transform:rotate(0)}90%{-webkit-transform:rotate(720deg)}100%{-webkit-transform:rotate(720deg)}}@media screen{#sidebar{background-color:#2f3236;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0IiBoZWlnaHQ9IjQiPgo8cmVjdCB3aWR0aD0iNCIgaGVpZ2h0PSI0IiBmaWxsPSIjNDAzYzNmIj48L3JlY3Q+CjxwYXRoIGQ9Ik0wIDBMNCA0Wk00IDBMMCA0WiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2U9IiMxZTI5MmQiPjwvcGF0aD4KPC9zdmc+")}#outline{font-family:Georgia,Times,"Times New Roman",serif;font-size:13px;margin:2em 1em}#outline ul{padding:0}#outline li{list-style-type:none;margin:1em 0}#outline li>ul{margin-left:1em}#outline a,#outline a:visited,#outline a:hover,#outline a:active{line-height:1.2;color:#e8e8e8;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;display:block;overflow:hidden;outline:0}#outline a:hover{color:#0cf}#page-container{background-color:#9e9e9e;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjUiPgo8cmVjdCB3aWR0aD0iNSIgaGVpZ2h0PSI1IiBmaWxsPSIjOWU5ZTllIj48L3JlY3Q+CjxwYXRoIGQ9Ik0wIDVMNSAwWk02IDRMNCA2Wk0tMSAxTDEgLTFaIiBzdHJva2U9IiM4ODgiIHN0cm9rZS13aWR0aD0iMSI+PC9wYXRoPgo8L3N2Zz4=");-webkit-transition:left 500ms;transition:left 500ms}.pf{margin:13px auto;box-shadow:1px 1px 3px 1px #333;border-collapse:separate}.pc.opened{-webkit-animation:fadein 100ms;animation:fadein 100ms}.loading-indicator.active{-webkit-animation:swing 1.5s ease-in-out .01s infinite alternate none;animation:swing 1.5s ease-in-out .01s infinite alternate none}.checked{background:no-repeat url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3goQDSYgDiGofgAAAslJREFUOMvtlM9LFGEYx7/vvOPM6ywuuyPFihWFBUsdNnA6KLIh+QPx4KWExULdHQ/9A9EfUodYmATDYg/iRewQzklFWxcEBcGgEplDkDtI6sw4PzrIbrOuedBb9MALD7zv+3m+z4/3Bf7bZS2bzQIAcrmcMDExcTeXy10DAFVVAQDksgFUVZ1ljD3yfd+0LOuFpmnvVVW9GHhkZAQcxwkNDQ2FSCQyRMgJxnVdy7KstKZpn7nwha6urqqfTqfPBAJAuVymlNLXoigOhfd5nmeiKL5TVTV+lmIKwAOA7u5u6Lped2BsbOwjY6yf4zgQQkAIAcedaPR9H67r3uYBQFEUFItFtLe332lpaVkUBOHK3t5eRtf1DwAwODiIubk5DA8PM8bYW1EU+wEgCIJqsCAIQAiB7/u253k2BQDDMJBKpa4mEon5eDx+UxAESJL0uK2t7XosFlvSdf0QAEmlUnlRFJ9Waho2Qghc1/U9z3uWz+eX+Wr+lL6SZfleEAQIggA8z6OpqSknimIvYyybSCReMsZ6TislhCAIAti2Dc/zejVNWwCAavN8339j27YbTg0AGGM3WltbP4WhlRWq6Q/btrs1TVsYHx+vNgqKoqBUKn2NRqPFxsbGJzzP05puUlpt0ukyOI6z7zjOwNTU1OLo6CgmJyf/gA3DgKIoWF1d/cIY24/FYgOU0pp0z/Ityzo8Pj5OTk9PbwHA+vp6zWghDC+VSiuRSOQgGo32UErJ38CO42wdHR09LBQK3zKZDDY2NupmFmF4R0cHVlZWlmRZ/iVJUn9FeWWcCCE4ODjYtG27Z2Zm5juAOmgdGAB2d3cBADs7O8uSJN2SZfl+WKlpmpumaT6Yn58vn/fs6XmbhmHMNjc3tzDGFI7jYJrm5vb29sDa2trPC/9aiqJUy5pOp4f6+vqeJ5PJBAB0dnZe/t8NBajx/z37Df5OGX8d13xzAAAAAElFTkSuQmCC)}}</style>
<style type="text/css">
.ff0{font-family:sans-serif;visibility:hidden;}
@font-face{font-family:ff1;src:url('data:application/font-woff;base64,d09GRgABAAAAABekAA0AAAAAIuwAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAXiAAAABoAAAAcpiahUkdERUYAABdsAAAAHAAAAB4AJwBET1MvMgAAAaQAAABCAAAAVlcTnO1jbWFwAAACpAAAAN0AAAGy+bnH6Gdhc3AAABdkAAAACAAAAAj//wADZ2x5ZgAABAQAABE+AAAaSOQSJUtoZWFkAAABMAAAADQAAAA2LdUatWhoZWEAAAFkAAAAIAAAACQGoAMnaG10eAAAAegAAAC6AAAA+IiCDGtsb2NhAAADhAAAAH4AAAB+uzy0im1heHAAAAGEAAAAHgAAACAAgwBSbmFtZQAAFUQAAAGaAAAC2VSExQxwb3N0AAAW4AAAAIIAAACmpYhUTnicY2BkYGBgYmQTOVGlH89v85WBm/kFUIThadPrbBj9f+d/NuZvTO+AXA4GJpAoAHUdDk94nGNgZGBgevefjYGBhf//zv+Xmb8xAEVQgB0AoFUGzHicY2BkYGCwY/BnYGYAASYgZmQAiTmA+QwAEL8A1gAAeJxjYGRyZdrDwMrAwNQFpBkYeiA04wMGQ0YmoCgDBzMDDDA6MCBAQJprCpBS+M3I9O4/G1DlO4ZfIDUgOQDrmwvqAAB4nC2OvQ4BURCFz8xKNERBca1Y1QoKySpUe0uNn0SFZHX7ABpP4Bk8g8oLqLyDfnt6pWSde7nJlzNz7pzMiIF/sgK0T71iQ2ywg5UJtnJAjb4lSzL+03N/WqVfYEQyvTMTUk8kR+ZqWWCvH/Yz9o+fRyxnM0+OhNmBnynQqTRgqEbrGGrC/S/E1FhK7lsj4t42+1SAqUTlTZuYsbZBjtT57i6fO5ILM2e0/PwboT5hqI6uzhF9AWuOKFsAAHicY2BgYGaAYBkGRgYQWAPkMYL5LAwTgLQCELKAaU0GXQZ9BhMGKwZ7BjcGT4YAhnCGSIYChsrfjP//g1VoMGgDVRiCVTgyeDB4MwQBVSQyFIFU/H/8/87/2/9v/b/5/8r/C//P/z/3/+z/M/9P/z/y/zCrDdR2vICRjQGujJEJSDChK4B4BQRYWBnY2DkYOBm4uHl4wSJ8IIKfQUBQSFhElEFMnEFCUkpaRpZBTl5BUUmZQQWqUVVNXUNTS1tHV0/fwNDI2ITB1MzcwtLK2oaw+ygHtgRVAAAi2jA/AAAAAAAAAAAAAAAAAAAyAGIAhACwAMIA4gEKAUwBpgHeAgwCWgKWAtYDFgNGA34DrAPgA/oELgRSBKIE1gUOBT4FfAXUBgAGMgZoBs4HAAdMB5QH0AgaCFYIkAj6CTIJYAmcCdgJ8gpACngKpgrgCxALYAuUC8gL9AxGDIIMxg0kAAB4nIVZCXRc1Xmee9+8Zbb35s3bNPPe7MsbzYyl0axCQpJtWbIM2HiVbTAhYEos26w1i0tJDKVAYwiQpQ0hBxxjmtLTmCVAy+khYe3BhB56QtIcHBKgKSkNYEwxEEw07n/vmxnJgrQ+9tW7bzT/999//f5rF3JNn+DQxfiIK+5ysSpXRKmcnZNrjeYoGkaVGNJUXmQ0VTd0dLFfCkkB6cmZLQGfGPJ6BM7M9UdWDPvf9bhZ8SCqfvf4Kr8bcRwjJEYv/dttj/1iKuCCP8g1AhgbHIysyvEiApg+VK81R5l6DfDqtQaAEYwNnxEOoEG/9OTxjnA3nxy99L5tj/5iRYCluFT+XiaCZ1wKoKnppKym6nIyVasm5VpFk5NMpN56f33raL2OguuRhDLd52C93jrq6LjxxF+7Drv+wmW6XE1VQh0diSGaqdwIclTUDntqgiD5vR7eyzE+Juzh1ZWKYCriOj8L2sUkISHAK5XnVUeu3/UUGkAeF090A5m1YYQGys+Vy88hz9TUnH3eAvtIsFF5xKVTYJImalQrOnqLaz3gi4d6OLSG/MDPCtIfrkmFZUFi/jIVdr5/Biyv4BddsM3A+QmGDEJq1VHcBCHgRbmKXim3flMur+rvL5cWTelBUVc1ZnJqagq7A1OoJyiKoaA4+w9UXh8sR0BeifoLBJLzj6EGOCud4kFyP2oQwbqmigjcKaFqs2LoGjqiWq37LdX74/MHG9MJ1sN7KqFmY3r7ddlM1jPI3LB/WY3XyqammYLifXHmrNrqSxT/4vFi6aZzCyvzWaGMr0VuT5rqcOJ36GPQYYmjA/EFgTT0amUUgyIkUkGrJjgIDjlPMzDdKAOHhqjlYwh9vOvPh3dU/Rzv9p62Ndkb4uyxEngHxxXN8sWjpfVVgeMFi5fSi5bnwqWxUmLn+PKfzFxdLHgmfN5JrZCPjY/zakhnEIPcYiA3Wsiv8PnzHo7RE5bGqunxvh3D8maXC5P4xhx+zJVwZanWRUgfzlE07Wir0LTSwR8V3ZbTHIM5I1xQLSuqvBFVhF8LamiFpRZM7d+QuO95S5kxNT0yo0fCmoTulATNbF2mqmi63DpM8DaCtw6jFyBuAFnpQLUjVV6wPywoNCwhXOee0PndV62d3Q+I7BFwwiH8lMt2NWlUikwUUYkkXZvUBY7Fc/24RjzDLMBDh5pKJK8J6oDhRhcEvLzZv7bO8VAeQmxscvNL31SttKXCElVw4Yy8FC6PZU2VF5jE3gsDYtQoJBZDkg0EPcHc7CUkZNLEFi6iWwGWh8HOlitD7Exg+1GSJ/h1YmNMS5eh6DaTs9OchPDDdiNp+FKtt21xIGOzL/PhkLhJDIX5l9nXz+U5JFhTptkT/+IleZMP4C2qyjCqOnsg8BMUVqOZtT8jeca4zgbcewDXdOVciwiyyJDkqMv0yDEWvM3rdg3cDkHKKM4Dvqd3cFUj2jpiqZr5kRQ+pdjIhE+ffPD7d12xSwzXMlHr4JfvuOvp6hm2wWomnrZUxPvN7HB2aGUw+tB5L6OA1t9687r3aJ34EN+Inybnz6o8R6xPvUFSEdKP7vsQcUuQ5EmTJqmGb+SGi/nl/3j2li3nPDp4Vl1QsI9lsqsrFzeazeZFSzN2hcP+IcGd8vvOOvuhh88+K6i6vTu8TCq2eEnrD0vG/AEb+4jdyflfhfNLrhiJCa5z+GoS8pKv9TFFJJOT41e/+4PW78l5kfDAhonb2fCiTaN7rhvZ2Bdm0fTd/+Qcc2bjvuLQ6oHM7EfJ/jOGSM4T+evwD9vZM0+6TmIvbae1JKk58Ik2RpsTXgcFZxsF+quoEkm8PYB4UzPCrU++fpemBGmlwessVY8ISYl5XDUt5V8xZnTDqZsErwZ47dOAfFrT5vK2A6/hWiT+H8W3iOy3VKtKEXdD4F4DYp8jYj+dg5qT/SOwVbpdCYiwpDwnluRIFCXbrU/DPwKxUaX1TFs6PKMR+qpMwh55Wx9RhGmCcORIOxUAZwus71GfQN86Sbr23pys8tyX27o9Ad9JdXSzGV5b8GUZkZ9QQ1n8RFA5NRV8/RLVShFxKVBtqZYdSflbn0RVj4ZKM383J771Diqrmtf3cRtHBxz9JH864puVGNawDv67r63jJ0FNwPMUnX3NLQQDPkcOcyXIacyzZZrjGZFJ9WGa4ycbFjLfqDa6xZa5UrVMUNo/vIeX9GAiqEv8rgkfgrcEel1F3rOEQ55TbvAleta3DY7Z0tda/xIM8RjzoSCK3t83+2lHtd7Wswd68l9FyyyJeGHO18muPdFCjVBVnufpcypa690OPmyQgqiKAJ3H2uwHHaT87Ns40PE11OQTv4P8exG4BNQ9FEwmZPiHa31sSoTaE2Mro278auvB1kNoNTrzG4gPWPboqhHbCvDopM1065toJ7qy9eXB5NJiM2EYyWZxScq0MpN9w5lwODPcP+nq5Pt1cC6F9Be0IC/IYXjSh52Uv+763d9ux9vxq2/Y29x8zZ/ZzZjsRr/evu3Vznm2X7x4aetTycgmuvJvpXFYpNXU4Vw2s8B4pLDyTQIF+dnAt/r9geGAX+IPQESWCeDRYGRoUTMbvlsZXHP99evrMVHE2OtH8dYnHWQkBGL5Jfm9uQcHB98YBp8NgC2zYMvRNr/oR31cnZAcwjEq9RoUUhuCi7AJDK8IE5YQLbjpFPDhOIohnN2z67QVHCdqiip6sOT2cv5NR+JStlwpDvcMDqyd6r1gjcKTD9zy6DlXDVpfXDXz/GUXGRhzgsfrAfoqbAz5zzwvFxcDPr8/Hh5etXSzLea9HEc+CY5szBY4PXQ1ibE82OoR/CDhpwgslba7NuLBZqTrOoXqkWAo9Dx1xKFQKAiHL0GZutrQGWb2TWoMk4H6J7QLFcQu2GFfpxZAP4OMmktSFbpIo7vF++yhtZN245wtDZqwi9dNL1GtfFR5c/QL9YRXq86cjvbRGrBl7eq1a9C9TuQiojN+yskPYBKMiNt+BuN2OrXRbtv4KfY1PiJLW0hzfp21G5Ic4ffzau0mPhKSbBvfxUiz9wJ1ZVQFnysxJvTp1hJt6DvoT+ElYPVArfgIsMYXYtm0YnS29hxytTGGHHC9WzgY2DEfuQ+whixNibLBXggEzK/OcLBfKsH+gLs3Be+56V4BITW8iX4QNoWdBlQSY7tbVAJerRffyYqzBxTCJhS0e+Xy4eWt3ZpOdd+iRInqT95Z8a3fiqZAedls7VifXLQOfTUIQeNyzoKfhbPEnbmgSyaRYzgIQt0A5Yl38LOe1qeaCenQ+tSTWWpl5Mtystw436wNZPA9Xl9r729NyJTfoiv8giH37G+kMitvyUEO9p74EB1Gv4T4GuxW15H2CDLKVrs0j05plE/wddGtkcgYZdBh1cpGlcaFY2tipcWNMUuM22cv5lgf5r3BlRtfuFmyGnbcjrFiMqzRuqqeuWkwNhDTfRxK9y8a53yDsiDwiXv2b0Q4oPVasRLyhnK01n2IfbR/1shUI7KgwoLmSRIz5ia8A1SUqULYhwQpUZwsjfeh/jypDaCeYC3L2rTy3YR8aj5azcX7E4t0H/59KtzMVxJGxe70nP/2aBE9UcnXC/Fk3dLTreO2EW0kwRdZsNMhsFPBmWHBIvWaQ7vULu8ik3KMIcQLzKSjQ4I2seHd/xk41e7xM1AbYrW+aEH3Y1CiEFs3Bm+4isD70u9/KIZ8Xq0c8IU11RrIxcx4PdYz6A3YYAeC+wG1w7zuR+YhlvqnYnQYBFPPEQ0cBUYR+gBSM6I3Tutdko8FIEgFMVZYWjitRj12c6KPWoDaI2GpHnCOag4ZcPRGT1AON6hZfkM8Nvvx+3HDaiRHiUFCokzmHNDpNbBFEqYDpxolY27n2NQg1DwkXmDPU0KKXgvKUusoYoORcmL9uA/GMcbtVc7YcPUNu6/c+SeXMPnml3jkhtzoSfVF1SGvx0j4BY8nd83uXV++/AvjEzeTfCA87VqYSXodVFqLRRxF1QrMAN16SK8WqsQ7pGqjaxHn90SLRtTLVMvlMhzfUoOKNvhMJhr24ovIJG/5Yf69aKp1kBRItBbLcmb19znWEwLOHz5RwTr6uasKFWUVwaUtAA5J4lFTDb3doGgIABfPwV+K7RgDohOnU/CLMQjWBhkJUiIkMowFeoATemvxQ6v7sSZWyrY9kSuHQ8cvHS5kxk1z4NDm+tBIgGP4VxgxHi6HnXXbNbuCIfUbX0ffCrh9uaX3RfxMj+ZHnE9PVpJfM5Wx2IiZ3pQtrr4vneaV9LawGfWXKnRt/bjC6PokseOpsByDmLLn8SmS51x7xJtH06okyWCYO0YLfU+qOA4P7bxC3viKvpUTDkFV8qnxkV/N44FH1Gx+fCXt8xC5rkP4e86cupClNhfMjU9TD1EAXolWY6EOCwbXbCeSnw0bRlhxegs+8fiJqut1kG0SDmGoztXJKOreFHRg6gtgXv9W/1Yfz3JYsNKa6cU0LebwEj9Iim5LEdwhiI0A+imBmweMXBNgw/fBhvm5CVREn2XRTYdFS4jG4vuZsh4KXC/EBdUKkUNqUeV2IzuUkr5z0M3quif493yU3zbPivffqGmCeNt/cj6mfVcE69Ofz/fnWe5kvg/+ZnIQw0P/h78/z/2QWbTk01jWmBx1fU+6sOzkB2ckUOxFI18JNnbSgABfKb3JpaO/Wvh4KVGp0htNbt1KgqMdi6Bb/v+LRVCG3Ot8XiwSeF7NjWQ/G4xtQNHKGQSP1i7MQe3indtIp4xDlrpTpKvFGNJEuGMfHPvgZsSJMMznjACHsE8rjhZ0H3rjnXeOH4lYfRHLH7DC/WYkkWpYum41Ug4/H4UG9HNXlFSorNOzFkZEg6BBRaR3qlAGSMOKlyZKE4s6iRXRRzY+evOXqhleNmKX/Zfc7lGPU5eWLBXq9NH9yaNSwC878YAuAMwEZei8iP643S7gxObGdowkwGTBUikmBli0V4HSO7HksTl7LclVdd4rE/+QWn8L2GvQsVaXBhDl67UuSYYXzpVblyIDuYphQ0e3PDTUPD2AoAEKQ5tXxU09myzJAz9slJAihXykMXoHV0xZyZRlFpXyrd+We0LccrckTDRUk3fzgiqVhm/zc8CYWWiR3v6BUI+HY3lNLtJ8UEG/K/BKV865E0mnyF0bsKN69/SkOVC+0u5P6IrTa/UZtVw2NDMeVTaXy5tVxe6FWsC5hX5VD94+O0UH+XVT7/RnYsBkLBKngHMMveDcOM1nSSeT5bnrr2O0ovSfv+5MzYRw1XqrTRq3NEIjG05diSya4b/sjUzW320PechFCPMrgBN2+KsznXeJsonoTIteYa8SB1YMiFex+R7d4tmtW/lwTMujg6zYuq1QQJeJrCWJYuunqM9QXR0u+RLIrcKGcSYtcJzNd6/jbabDgTu3xhSNPOCXdgg98WUhQ+TYUzjkHvb0JC05ZHDbUTAQUGM9wmqxYLnFnBYR3BvWeCNZRZbQwdYeU+GAMbzURP3/ntQZMMqeQAArkdabfXedxxtSUGz9DKWyIdz+fwLQEZH7zE5NBQ6HHPXIZGZ3WW9jrqrq6HC6RIbBC6flYE8x4737b7zpkqL6p88EwlNMe+/Y79N15PHevifi1QX/M4/4BJ2Xdu4QJN3jf/hpkeBGT1SpzRe1Zwam3czbTQQ1G822CyB8DHqr7jjhXlYtLC8uA7obYPhkKpwRBZ5/grUjmYixnkW4lGeknJ5HD/CBVk7KNjIiMylIbs0yjbCM9vndEbP6z9XYHZe7DXK/CPwGB4DfkD452Z6457UsZkEpyf1R1hOlpAwSMQXxjwM07uiCaFDS5fnyKV0u9D0zHOIRx/GsvPRUfC4JxjzlfvfTcrqdrOWT+NHa+3i3J1T1egRvauTy/wWCqVFZAAB4nJVSzUrDQBD+traiB4s3QRTm2AqJaZSCHlusUGwtjS1eU03b0JKVpFB69HVEfAyfwCfxCfy6WRX1ZJbMfDM7880PC6CMFyjk3/ALK2ypPYsLKKojizdQUY8WF7GjXi0uoazeLd7ETuGQkaq4TevZZK2xwq4qWVwgv1i8gZ46triIffVkcQkH6s3iTewXFJrQeMAKKWJMMMUCAh8ezwkcnhyf0TtilKABl7KNEHeYMXeJjDqmL0SCe3PnomOiuuY+j1xHVGgnhilipRBzjGlpI2/ou6UeIMAF+pSCS+prenq0qmREUz+s0ngyXYjveSeOQ3kmo5U0XGmHdzO9zGaxhMm9tN2OK129pDOWik5kFE3D+Vj0WG6iWxkEF/1ALvvXg15QJe8VGw7MABlqHBdXnSBMshpRg/3NORcaek7ZMiMsjE65sMisy2WO4Jz/bybniyC/r9NTs2v1aaGlk0VLp5NIfNeTc/ms7Kzr0a47NY7p1/82+U2NH0nrNxexuYw7z/edN+jhlBjDKM1iboTlvFP5B+0HGhp0TQAAeJxtzbtugQEAgNHjNxgIIsVkkWormqLi1ohBWuquhNblBbrY+jCetsTsJN/8CVz9n6zc0r0UEgiLiolLSEq5k5aRlZN3r+DBoydFJc9elFVUvaqpa2hqaXvT8e5D38CnoZGxiamZuYUvy8t/bePbj62dvUMoiPwdf/u9SvUM5RUQwgAAAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQlsgZgHzGAAGPQBseJxjYGBgZACC2wqnqkH006bX2TAaAE6uB7wAAA==')format("woff");}.ff1{font-family:ff1;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff2;src:url('data:application/font-woff;base64,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')format("woff");}.ff2{font-family:ff2;line-height:0.727000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff3;src:url('data:application/font-woff;base64,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')format("woff");}.ff3{font-family:ff3;line-height:0.704000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff4;src:url('data:application/font-woff;base64,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')format("woff");}.ff4{font-family:ff4;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff5;src:url('data:application/font-woff;base64,d09GRgABAAAAABXsAA4AAAAAIDgAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAV0AAAABoAAAAcpiahVEdERUYAABW0AAAAHAAAAB4AJwBCT1MvMgAAAbgAAABFAAAAVlbAAa5jbWFwAAACcAAAAPUAAAHSq8IQqGN2dCAAAANoAAAABAAAAAQAIQJ5Z2FzcAAAFawAAAAIAAAACP//AANnbHlmAAAD6AAAD6kAABfQnEjtnGhlYWQAAAFEAAAAMgAAADYsRRqYaGhlYQAAAXgAAAAdAAAAJATBATNobXR4AAACAAAAAG0AAACACyIFTWxvY2EAAANsAAAAegAAAHqkHp5YbWF4cAAAAZgAAAAfAAAAIACBAIJuYW1lAAATlAAAAZ8AAALxUj/WB3Bvc3QAABU0AAAAdwAAAJoGqQcEeJxjYGRgYGBiZPOPu+kYz2/zlUGe+QVQhOFp0+scBP1fkYmbaQuQy8HABBIFAFhkC+QAAHicY2BkYGDa8l8RSPIyAAETNwMjAypgAQA6eQH5AAAAeJxjYGRgYLBhCGRgZgABJiBmZACJOTDogQQAEaEBBAB4nGNgZOJl2sPAysDA1AWkGRh6IDTjAwZDRiagKAMHJwMYNDAwMDMggYA01xQgpaAgzLTlvyJQ5RaG+0A+I0gOANF7Cr0AAAB4nCWMSw5EABBEXywJImLGJyGEsWAxEZ8TsGHpDHM315hjOI0SnXTnVVV3GzY5KsN+moOdkoGJHx0Jf/GtIwI+eGykuMRyQjmd5qndSvqLyUJBT607i5UWXxniUVnKzFv8wtG3kIyG4QLB/Qp2AAAAeJyVj8kuQ2EYhp9TVfNYs+KYT1VVq6YSicRGYiFiJyLuQCzdhAuxcQeGFSERNsaFxIW8vnN+LGzUm/zf8Od5k+8FKnAvhUeoW9u8aI9zaj3At6naapoMWXIUKFJihTXW2WSbXfY44IgTPymZwzePI/MRucyqkRtssWPkPoeO1Ife9KoXPetJj3rQve50o2td6VIXOteZjt+Dr6vKkpfgB/diVmK/ARc1VLySBFWWq6aWuuinnobGJmhuaU2Gaxu0d3R2ddPTm3KWvv4ByzY4NDwyOjYepCcyk9mp3DT5wkxxdm5+YbH8Q/9W6XtY+qfxE2LxOPsAAAAAIQJ5AAAAKgAqACoAKgBYAIYApAC2ANYA/gE8AXQBmgHAAdwCBAJEAoACvgLoAwoDNgN+A7oD+gQqBIYE3gUWBToFWAV8BY4FzgYGBjoGdgaqBuQHVAeOB7wH9gg4CFgIsAjoCQwJSAl6CdYKEgpKCnoKxgsKC1ILlAvWC+gAAHicjVgLcBzlfd//7ulWp3vt83bv9u6ke+ze6U66Xd0TvWU9LNvy27INfgkhYhccjOrw6BTcBJuUQJqEpCGDKdOmKYSatAEz4OImQEk6QyBDOtOMccck6YRhsEObTuMAk6R41f+3eyfZxMlEo9v99tu7//P3f30UTaUoCgr0IxRDsVTpJFDm0DOsh/p5+aS37UdDzzA0LqmTDNluI9vPsF74cOgZIPsVPsXnKnwmBb4Lr7xCP3Jpf4q+FslRJ5aehtP0s1ScotokbyZt5IxadYSplCOy5GVDIEsRJQlwmotI8/rm4shkpSPCdYSv3bBplu/oDSgbqoe/sObenauSSiAY8A99Y/a6E9cEAhRFaM8i7Rtd2iCFGCReq9YbI1CrlmjCpl6OKBG40SEqCYSov3NdQxTyyAnKDlXVHwh1INXOVXvnskHBryI/h3aW2gQXaJkS8UkqopjpYcikq4NIvJyAClyoH509WicX2DN7rF4/5lxcuWrQDmdhD1oRf5tJpauVFJyt26/V61DHb8+S7zSWnoIzKHuYyM6C1xG+AXU0DJzx2S8G44Lqg3Fyox9gpUvXd0V5VqK/2hV1eezHywv0ISpGUTrKl66haDxSQSL1BlKR+UoZ7fpC6X3T3GKaueJoNhDVtwQ5Xtd1A46l9SzNzsYtO8gIhF4ZL+eQXpHQ86LQteoo1GtVI5P2ssRXrnUdv6Hb2Iq7hnNC3H7O5M8e2jmc7fcHukQhtbhz7ujH5aOx73MxLWglREMInbpu28CqbCIsKvFYfPLALdfddL14MKJGogpF0ZSGvH9B30plKMPVRiayyy21aq5txBEYBGSJimV4Bn5hTlZDHG8+ZZq1/4mLHT/xc7KWFCbNb33nNX0XI6Cexi4hHg3BXq5dTNgnoc/+N2I7mvoO8puBZyk/pRDrr6jGX7aGmVxS6778A4e07nxCK+Tt551Fd474mmrAWbqXkl27pXM6kVVvGioIETgb40Kc/e1IDMZwEdPsixDSrhcj/u/zUoR/1R8RI8KTTwooV5Z6ES7A1xE34RXkRFoIulC1H6v2w9b+fvub/VXYA1+fnf0ygukKGRBLbU0s9YKridJGZLD/xWEOIfuiRgSCyQgac4V9xBHItQ9CDH6J/tCpfBNdJSCRlcuwxC0hcByDKEOXYIiJZSWS8wP8srwQ5nk1IX5JTKg8H14oy77k7aw6oLK3d7bLpxoNXWd4XgnBjh0QUnie0VU/A79OhMIJu93j+yZ47A8pzD5Ej7fpBUrFjFRw7NoCeMa5ubkjCbmq4WClrrQW8Pbclv81LUGwzB9tnrO6K4MHeiuH9wwNyNXqJ29rDH1j/CYE/+uGPj9SmJKEbeeTjeeG3zNWvz5EYsBYeh/eWYmBJhKUEZoEVAJTDGaAEuRKePNi3kJ+5AW8c+eOhQcfXJjoZ9oAQpLOSCInehjfeHFs4Ybx3IyHMQr/ML146r4/P1VkOzwgW/dxHBcIBhujn91/4LPVoQzaHE0P51FnwYmG39aYJSryRMXzR65/1bJCIct6df7urdvW7dixdhZ67z5JFNON00d2P2hXPuPkiPV4eRlpKkQfJ6SbBCupMokuJAcvW/Z/Wdb8vGWhXOSOYaMTCxm6XUEaSaTxLtLoXMkLK1K5RDCfA4lXeFdI2F8yzXjcNP/aNM03GckQGUwArmSE4CDHh1F3pEvy3iWkW1nOX/UKz5AAYnji39YWcQJyUjQYoR2O3gy+h0vmZjOqzYa0SOjaWNR50KJmoxjYtd3rU+WG84yZTgnDw7YdE8Fn/1FYcZ5fx3vcfgc6eM6Pz3aFiELyKFxEeYrE+qgV8T/6mkEbLSeiZWcoYmsJF01eigu8yD7OmeYB0+R50xyPxnzuIz2s22onzwgivGTfaDRNG47aq+BR3SCxVkPMnUXMKYQzJYU86ZKnOuIpJxm26iKNRaxhiXTQBmc9olod3D9YUwWPR1Br7nJTwFduDPR1+AI+c2DIbPfDJx/dt0FXvW2x7Ma9j+7bmI21eaP6hr871puJaD09dzxgZePJXBX5q6jvW6h3lEo3cSdfTWN2OcLeOrj9MCLliGXJeDs3+/GtE8Nzc8MTcGLm1scM3Q2vxXXdq38yRfSTl96n/Uh/mJpqZUiSTNC0xuWsSG53mDWTPMY31m5ZStKVMm7ilW5KQPvN3mviQS/4fIneSbTybSWeC/I8uf7jzkN6dzLgA8bHdvi4Drb7xPjg6OjADfqavkhfvyKrvujLKCMvMIhIvB6YyszEokl1WlGSQZWPtNPgWzf0MqmH6BdSD0coKutITYJ/GBxRkqCgcGiMWtUEJzWSLAHLOSJnuAmiE/CbcO7m7ftGWJ7Taa8QFkQGmN7icGX4wOLI1MGtGxosVmTMGNk26aA5WujcOFZLXHzwlnxEsO4JBDg2FArWErGR3FZJ43fVJm/My6J1D8ZQ6rZaNtnrE8KRuBPrxI/voZ1zTi9EMjb2K1eCV27to7wpUrvfcwL0j4umecI0i4edJzEBRxIC/HeY53gu3GNXXND2uM/TCVFy+Z3D/uU89i8K6euQhVHjq/VBaNZtt/k4XzoZF4T4SWw6Sp/7HF57dClOPx6XSHW+9EVsPK7og5z+MNeqWlg5z6hCPGi/0E5uMNGe46Od9N+K7Xi7NCfib3X8bbklg7dZphwcuQuiY/ly/kSelMuevpVciTJYP5fm4ezSc6Rf83y0X5sh7Rri2Fr6De2Db2Me7GnhuFkhGkaGJV7HNRb9BCAwcjWnsa2UGyM07dOSm7X+bev3/s2nPYsWdAly8qGPLXAZ89T8YjVfToc52ogGE5lt16zexMwy8Whc3TQ3+rp3dJ2nkNJ0jpWCyL9j6TdOHo4RDy/zRz2XQzThNI+s07EhEAk+4d0js4MmbYgSkzWt6YRQHdty+9bVleJE3apsPLfvaD6N2Rgu6IYU/6pxdO/wzuH8dPfsdrTJauR3BvXNEm4h2lGPYN/pBE1Ih5imggh7OMNlZ8r7PhWrXD98PBnpg0q20SWzOwbHFa/AFQ77Mj1d9+7Jzqzu3aTGG6CkixluZGed96FeabQrjXol3EpPkJRbKb215YLPE6tWjeXKS9PWdJyny6u23HE36uiqlzWfGCpUNq4uW6OGwUd6j+6duydzlGhnq386lRvePja8c9btcaqo3w9RP41MPU0Nm+0tOjNF8q2jmxPLLPxQyq835+/71K59BzD47PPBndVpBUO3sCM0X1oTOBzIFpL3/vO9d+2WJaY+Wuc6br1l2CLYIvH4PH2TW1eI19I4PaxEiSxdWVIdtZM0PN8p6oEtiwSzi7sty/6VZe3ebVq79o0HovkonVPihUmDINh+ywnQpG4Ux9Yx/iTpn7SlFCzBi1hbR6jNpKo4c1erjc95ZRy5aBKsCpHD63SLzQ8xOn4QRS1Di9WSJ90sQxGE1FJC8GtehVcWVpd0BnxtXLsKU7vr2cz9/3r/lCgkb5gu95j9+ePlNeVyNlO5OSimtVJMrSc5fe4zc3C8FOV4T3u+e3Je9reJfjQuJMTx1NjOHas2lJKGnsjXxue1rr/Poruz9Zr9PU7l/F7G06HkOkslYlM/OhAQM72XzT61Ju6vVrycyCCvaCg9ZFlJNV1Yk7HMvyqZmWzJRNzUJu7LmGQuOlPIjo087lYxApvHCl8+5+JlBhm/Ru/D3rTzo91UC5+Ma0qcOuE1y/6pZR3ab1kPJIR91gMpK4X/zuSFGiIcX4E31VRKVVIppN2zlIY/QdqdVDfJZGSSdWcQJ5k06isxLjdWeNzWEctNFB7slMUuQevT5DtN65GE4HFZZSKlal7bqsbjShtjdFpwH1Hnay2eQOZasK/svxo59qq1X+Yby5WZvGUVDHnb+oQZie6fypvmV0wzj7exuHDMqcJfsazOxQc07CT1SBjuHZts9T2o97fuImXX0G9+luR+lOENlEH+XRaFN0z7JdO6w1XtTsdFrmNsFX9PHNMBp6nJZR0aLRistJBX2VrpKptwT9LkNd1hre3JBcOJYkLtXdsri8FwspBQerdb0WQyanXqbLbYF8td01XkPEnSXGbpN7s7J/qfII0laooP4wNPNLvMJN6VeE9PppEKvx12Z3YHtyhvzx+IW+X3wjYuwNVwi5mAlwhsaaqOOe4NzHE+SmpNNAQ5bCuNYjS/cffs9rvuevKubesq5Zl1+9dhTbjnxWPHrh3Zum14bM8eF/sdS3l4F+W+rPZdFSjK1QtQiQhtWhmSo7ETr4x/pAY95cj9gW5wQu6KGkRmj58h34yTO9FnIfg9AR6BnyXyifWzN2K6NM3padM8mBAmdg8U4PaIpgr0TasPu6mSADE0UXR9MoU2+gHaaLJVBUj1IX0eMmo1eSU6V2LcUyvliknQtSO2eR74AZfb0r+2HNRIMydzbbHdgwORnoTac814ilXza/sGCu0x8o4XPeCdHeyvfYxL1PTEUbnQG8eI3YeFOCxuSWucEvZ62KBmpYJaVhNxnpjEihMMBU1NigcEmpU0C+VWUO7v0sWmR9IGOZ1y8eQMYy07uR30iLPt9GTfnfuzbRtL5gan2XvYNB/GmqGEEglGFCSRObZqzcTqd3RjDZnSuPAaQ/9pgIuG2pPRIBfmwgTDWK8BniWZysGwa66VoJVI5RyBy7cIgM3pHGsN/6Wbbtu6uqTuAoFDXMyWDCPaeeSiE9S/FiSho1f/nvPwiuOfyNKH8AHy63TnMqY5ll02gGotVvCBqR4KmGFe9h5STfOwaXJzcxxZwOd1+7TB8AJMO3PoOxAzdNf/IaRvI/2KW58ZAgET3IYuxzTzRBKcQw+FjPvY1TeWG0ywVW2A9kakVNiIBqSuTsEzoKl9i2Ee/8JG0QimNDkkFgzc6Fvsgy+oIfslLhyUv7inrEoqrAqpOiOkeeZX98Ri1ZkPSEV35SJnMBdRrvIV+fmyU7FGbtkGrNJoyrOcni9ah01ZXjOlyOZhy8p84paMhTv5wX5JKpGNm+7MkPwsh+mFBQhHMAAfuh+DI0tv3AicjKv7H3LlULE2EftXm/YPeS47CAzRMk6lI3Tjd/rjIcaX6KrGjbKmROKMxxPuDrVxIfiLqOOf4MKOZf+s9UWsbKKWicTjkbZ2jwfSWkdviYZ5x2P/B23EY+Dg4Mcoj3NGw6aaJ1PgDDeZlenGaWxYWDmb+HHc/jzOMCwP6f9gREkUGSkO6xHmLG//57vuSUU3y4hiOMiDKCD6cdzpxVkBd0Kc/fMECQg+7OTDIrUJZ2YZ61brpMgkU8souFYJ43jIXnUX3hL8vuCZIPfvQZ9f4J9+mv/aRzfuEGT/PwUlkTvVIQtS+PjxsPRbO3/QGfP/A+EmRmkAAAB4nJWSzUrDQBDH/xtTUQ960JsicxIVEtJUC3qsWKE0Kv0Qr6mmbWjJljRQ+gy+inj0UXwEn8N/N4uCeDEhs7+Zna+dDYBtvEGhfB6+WWFL7Vt24KrA8hpO1YtlFzvqw3IF245reR07To2eyt2k9mqiVqywpyqWHWyoI8tr6Klzyy4O1bvlCg7Up+V1HDq7uILGDEvkSDHCGAUEIQK+NXh8S76gdUAvQQM+ZQsxnjBh7AJzriltMTI8mz0fkfG6Nful58rjmHpmMiWsFGOKITVtZI+2R659dHGNDqXghusdLffUTpgRV3q2zNPRuJAwCGqeR3khg6U0fGnFTxO9mE9SibNnafmRL7d6QWMqxzqTQTKOp0PRQ+klj9LvXne6ctO56993T5i3zYYj05wmF6jyyGhHkc50u6iSG9yY8nRo6Cll0/gWZs05tsQMzWeU4JLfX/m87ySlT52Wqh1wSA1NnRVNnY8SCf1ALuWnvreqSkvdq/LIYf3vhn8K4Ffo6i9M2Oict1DeQNlsgDMyHpJ8nnJGLBucyb+TfwH+x3oOAHicXc3LioEBAEDhD0uSRFYairFRGDGbCcll3G+Nu9fxLrZe0Pz9S2dz6myOqJDX3TZQxDs/YY2KiUtISknLyMrJ+1BQVFL2qaKqpq7hS1NL27eOrp6+gaGRsV8TUzNzC0sra5vguvNn7+Do5Ozi6ubh+Q9Svg+tAAAAAAH//wACeJxjYGRgYOABYjEgZmJgBEJrIGYB8xgABicAanicY2BgYGQAgtsKp6pB9NOm1zkwGgBOuAe+AAA=')format("woff");}.ff5{font-family:ff5;line-height:0.915000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff6;src:url('data:application/font-woff;base64,d09GRgABAAAAAATcAA0AAAAABvAAAwACAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEwAAAABoAAAAcpiahVEdERUYAAASkAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlXGgpdjbWFwAAAB/AAAAEYAAAFKRYDkOWdhc3AAAAScAAAACAAAAAj//wADZ2x5ZgAAAlAAAAB0AAAAdPLyoUVoZWFkAAABMAAAADMAAAA2LdcahmhoZWEAAAFkAAAAHgAAACQGNQNHaG10eAAAAegAAAAUAAAAFAbyADJsb2NhAAACRAAAAAwAAAAMAAAAOm1heHAAAAGEAAAAHQAAACAASAAobmFtZQAAAsQAAAG4AAAC5VioE9Zwb3N0AAAEfAAAAB4AAAA0ObKyo3icY2BkYGBgZmheExXwMZ7f5isDN/MLoAjD06bXOXDa6P9E5jqmrUAuBwMTSBQAkkwN5AB4nGNgZGBg2vp/IgMD8wYGIGCuY2BkQAWsAF/rA4MAAHicY2BkYGBgZVBlANEMDExAzAhmO4D5DAAGdABxAAAAeJxjYGS8wfiFgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBjZoABRiB2gHEC0lxTgJSC0jGmrf8nAlVuZciHqmEAACXuDCsB9AAAAAAAAAFNAAAAAQAAA7AAMnicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUlI79/w/kg+n/j+/aQdUDASMbA5zDyAQkmBhQASPEiuEMAMdbCdwAAAAAAAAAAAAAAAAAOgABADL/kQN+ArUAJAAAAQcTFhUUIyIvAQcGIyI1PwETJyY1NDYzIRM2MzIWFxMhMhYVFANx71wDCwgH7+8LBAsCAlvwDAwQASFaBgkGBARbASERCwFxrv7nCQULCa2tCQsHBwEZrgkGCAMBFhQGDP7oAwgEeJxtUctq20AUPaPYhoZQ2j+47coGWx4r4GATAm6Id8oihkBXRciDJbAkI40j/FNZ91tK6bq7/kKPxtNFoLqge+7r3DMzAN7jFQrnr8QvjxX66qvHAQaq8PgCn9R3j3vM//a4jw/BR48HGASanar3jtFPN9VhhUsVexzgSn3z+AJflPW4x/wPj/sQ9cfjAa6Cz7hHhQNOqJFjhwwWgiFSjOhnWNBuMCaOoGkLohUKGNefIuH5BDG95axhpUPnyp6VDdlTxobZk2O+dTssdy4xpbXOQvYXaOgrMu9wx/3d1pazHbPgiRyN2/vC/5aZNXtLp/fRTRunZEN9MZVrcuG+OpzqfJdZGaYjmS0WN2OJtF7IqjB1nialxInNTJFYBnvZVGlu7EmGt5m1h+V02rZtmBRNWNW7u9FY2txm8mQaU7+Yrayr0spjUhiJN6t4prnvAUceuxOJh+Pe0MVObM58wcBs8yP9P+Vrf1rj7jekZuGtvD3FOTPHhNHEvULECN3yNWUZiUItSy+BYD6ZTSIdzfGGBec68OzUNVRUuafrHvXare6IhQ2mbvKqFK2vQ60j+T/PX+K9eoR4nGNgYsAPWIGYkYGJgZmRib00L9PIyNkMAAuFAkEAAAAAAAH//wACeJxjYGRgYOABYjEgZmJgBEIWMAbxGAADygAzAHicY2BgYGQAgtsKp6pB9NOm1zkwGgBOuAe+AAA=')format("woff");}.ff6{font-family:ff6;line-height:0.804000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff7;src:url('data:application/font-woff;base64,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')format("woff");}.ff7{font-family:ff7;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff8;src:url('data:application/font-woff;base64,d09GRgABAAAAAATgAA0AAAAABuQAAwACAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAExAAAABoAAAAcpiahVkdERUYAAASoAAAAGwAAAB4AJwALT1MvMgAAAaQAAABEAAAAVlXIgqpjbWFwAAAB/AAAAEYAAAFKRYDkOWdhc3AAAASgAAAACAAAAAj//wADZ2x5ZgAAAlAAAAB0AAAAdF5LOhRoZWFkAAABMAAAADMAAAA2Lf0aiGhoZWEAAAFkAAAAHgAAACQGSgNsaG10eAAAAegAAAAUAAAAFAcYAERsb2NhAAACRAAAAAwAAAAMAAAAOm1heHAAAAGEAAAAHQAAACAASAAnbmFtZQAAAsQAAAG7AAAC2R+DGYdwb3N0AAAEgAAAAB4AAAA0ObKyo3icY2BkYGBgZmh21xWeHM9v85WBm/kFUIThadPrXDjt8n8C8ySmbUAuBwMTSBQAYFcM3wB4nGNgZGBg2vZ/AgMD8zUGIGCexMDIgApYAWUfA70AAHicY2BkYGBgZVBhANEMDExAzAhmO4D5DAAGWwBwAAAAeJxjYGR8zfiFgZWBgamLaQ8DA0MPhGZ8wGDIyAQUZWBjZoABRiB2gHEC0lxTgJSC0jGmbf8nAFVuYyiAqmEAACwtDEAB9AAAAAAAAAFNAAAAAQAAA9YARHicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUlI79/w/kg+n/j+/aQdUDASMbA5zDyAQkmBhQASPEiuEMAMdbCdwAAAAAAAAAAAAAAAAAOgABAET/kAOSArYAIwAAAQcXHgIVFCMnBwYjIjU0NxMnJjU0PgEzIRM2MhcTITIeARQDg+sIAywmDf3sBwoNA1rsDgkLCwEdWgYWBloBHQsLCQFtrBcLhnYED7SrCQ8FCQEVqwkJBwYBARQVFf7sAQYOAAAAeJxtUcFq20AQfavYpg2l9NrbXAo22LKsgI1MCDUhPhSUQww59SLkxVKxJFdaR/ineumv5BR66Knf0af1FnKoBjRvZmfmvdkF8B4/oHD+CvxyWKGvHh32MFDfHL6AqJ8O91jz2+E+PnhvHB6g731ipeq9ZfRiuzqscKm+OOzhnfrq8AU+q+8O91jz7HCfXH8cHuDS+4hbVDjghBo5dshgIBgixYh+hoi2wJg4RECLiFbcSdv6FAlKZmJ6w17Nkw6dT/Y82XB6ylgze7KTry2HIecSU1przWd9gYa+4uQdbsjfsbbs7SYLHjijsbxP/G+ZWbO2tHrvbbe2SjbUF1OzD9xWh1Od7zIjw3QksyhajCUMgkhWha7zNCklTkymi8Qw2MumSnNtTjK8zow5LKfTtm39pGj8qt7djMbS5iaTB93o+klvZV2VRu6TQku8WcUL0t3hyJ07hbg77jVdbJXmzBcM9DY/0v+TvXaranu5Pi9XeCWvVzjHc0z4EBP7ACEjdMxratIS+oEsz/z088lsEgbhHK9GwB4Cj1ZXQy2VfbHuLa8saTdUWKDrJq9KCYIrPwhC+c+Qv+WyeN4AeJxjYGLAD1iBmJGBiYGZkYm9NC/TyMjZDAALhQJBAAAAAAAB//8AAnicY2BkYGDgAWIxIGZiYARCFjAG8RgAA8oAMwB4nGNgYGBkAILbCqeqQfTTpte5MBoATsIHwAAA')format("woff");}.ff8{font-family:ff8;line-height:0.806000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff9;src:url('data:application/font-woff;base64,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')format("woff");}.ff9{font-family:ff9;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffa;src:url('data:application/font-woff;base64,d09GRgABAAAAABTMAA0AAAAAHNgAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAUsAAAABoAAAAcpiahWkdERUYAABSUAAAAHAAAAB4AJwBOT1MvMgAAAaQAAABIAAAAVnXoGRdjbWFwAAACyAAAAPEAAAG61RZABGdhc3AAABSMAAAACAAAAAj//wADZ2x5ZgAABFAAAA3qAAATtG0kz7ZoZWFkAAABMAAAADQAAAA2LO8avWhoZWEAAAFkAAAAIAAAACQFugKQaG10eAAAAewAAADaAAABIIwuELJsb2NhAAADvAAAAJIAAACSrGSnFG1heHAAAAGEAAAAHgAAACAAjgBKbmFtZQAAEjwAAAGsAAAC+r/NfRxwb3N0AAAT6AAAAKEAAADEZ127fnicY2BkYGBgYmQ7e9/0WTy/zVcGbuYXQBGGp02v82H0/8P/2ZjZmN4BuRwMTCBRAKJ5DrN4nGNgZGBgevefjYGBOfv/4f/XmNkYgCIowAMAmJYGTnicY2BkYGDwYHBnYGEAASYgZmQAiTmA+QwAERwA2QAAeJxjYGTMZZzAwMrAwNTFtIeBgaEHQjM+YDBkZAKKMrAyM4BBA1DQgUGBAQYC0lxTgJTCb2amd//ZgCrfMfwC8hlBcgAEWgyDeJxjlGAAA0ZfEAFELQz+QGzB+IXBgZkTSIsyJALluMH0F7C4FhBHQmkQloGzgWqYZjHIMNUxODFdYkhgCmWIY7IE4iMMcUC5OKZtQDFZhjjmbIYUoFgC0wMGC6DaBKZWINZm0GFawaAC1M/H+IDBjImFIYhxD5DPwqACpJUZDRmkQXYB+YEM7xi8Gbn+H2Z8wRACZAcySzEEgsSB8nIgfWA9oUD99UC3ZTIIg+XOMvAxrQaafRboRyCbcRNQDuSnG2CcxMzF8A2EmdwZpJkkIJhZl0EaAA8xNUkAAHicY2BgYGaAYBkGRgYQ2ALkMYL5LAwzgLQSgwKQxQQkTRjMGawYHBncGDwZAhhCGMIYqhQkFWQVlFSf/Wb+/x+oVoFBg8EMrMaZwYPBmyEIqCYRqEYGrIbh////j//f+X/7/83/l/9f+n/x/4X/5/+f+3/kgdoDlQcKt2JZXaBuIAAY2RjgChmZgAQTugKIl0CAhZWNnYOTi5uHl49fgEFQiIFBGCIhwiAqJi7BICnFIC0jKyevwKCopMyggjBDVU1dQ1NLW0dXT9/A0MjYxNTM3MLSytrG1o4YJ0KAE/FKGRgcHBnsYWxXN0KqARq9MwoAAAAAAAAAAAAAAAAAACQASACiAMQA1ADiAO4BDgFMAWQBpgHmAgICRAJgAnIClgLKAuoDCgMkAzwDSANiA3QDogO8A+IEBAQqBGgEhASgBNIE/AUiBU4FegWeBf4GHgYwBlAGaAZ0BqYGxgbsBxgHSAdeB6gHxgfkB/4ILghGCHIIkgiiCLwI1gjkCP4JPAlqCZIJ2gAAeJx1WAlwG9d53v+BXJAECHCJiyeIBUiAIHiIWAALAiRIijdAgSTACzwkHlJtybZsJ60lphIl67JEm47iappqKllp68TqyO6opkK5Dqux5PHYbJQ2TuOoTevK045dJ9Mk7dhKGidc9X+7ICk5Kgfct9h973/f//3nAwNM310WesnPGSPDZDqcnE+MqESBVbMmo1UFvU1v1uVV1hYYmkY91aXlDWWfX4b2b8x7esTC/NG5Qy9NfGN2vJzBP2CCKMevyKkwqnUqtSMgBvy+WpVLMIP/finmpjc//6IU82VFTgt4YQnlRPCLkXXY68BsoqPT7xPVyhhohlriojfeMqCD4MU5alEZWT1YicUMS2atxjSZZdJpzVlT+RqtWaN/jI9YVDpzgX7mAY/hCmfIa9lv4PK5fMP+tlwDl6vNCufbckl2PmfQdDzwzbrur5L3SBdjwG9GB88Z7X6Ot/sEnvN5TRxP3uOln1RKn/A8FFSCBXQb9wU8L32iyJi+e5S5wiQZlmFEtUN0+IUrVe7CwiTMH0zS9xrmOhiZ3zAq5Jf382CUfgXZ10PKWrzStfhOoAuTyeSGTb6DXOopl2pIswiUJ/hOpnSJ1WdpM2GIDuTHmbm/TRi1WZm5qr8yaikmwlTd/Smskm+hTZ2yBB047LVAmRcjgEIsZpLnqlU57NRdLGbBK8JqZUFKtIWbDXZnyYS3OlVSGzew2UWe4n4bx5Ul+sug8+sjvpAxVJN8/k8GI4E6X0r6TyBBPVdp3iX+4eGmvY8ofKTwchH3Rihu8Ascq/YHRIET4KJ09aDQfzRsPBgiWWYSymxaO4Pzq3D+dZzvkec3Q0Tl9zkddh1RO13oLYpv6ECtfARvIAxwXXrywDZraSUXb+O3lOVnc5mQkZ1Ze2bqDxw2W3ZnjvpJw2NsAbvccqCrrCwYsEbGC+vr7AWZwGrVLx0cc8UqbNmN2ezePFAwr/NVRWMA2XaJVqSJRgHxAMKPgIyJVbtk+tBX1VaA1bnUgQGNbU8g2KYpEp1dsYyahnDVlmFTedlDodgjQTGYuDIw93BjfSDRaK6uszaxkLOtrqY+6A34QqMt3slSblKxVwmCuEVOMzmMDhE4TA4/7zcgZw6OVcGt2T7pV2vjs6/Am5cuXWpCHkfhQLP01j12LmKqZeQ0zmpVcmBZTDJgSp/a56L3JtZkVaGpA7Ba6ggnS/yhqpIXHxMFv6/7oez2XZ0TCYs9Eu4Akl3gq4g4C/4t1Odqz6uLzg+cf8cYNh38/eTibK87sr1Rm2ep6qqOuNe5u4MYTsu+qlOZHHkG3AtZ42HV0RatGfzZHFriGlwgfa6Hz767B/ohE7oQu+z7sIK+r2YYA3o/l46AJOxOSu3JNC9knizjDI5heIeLVztAMKicLgdLnYHMT/RKH2yLQuZo13ipClh/oa7o5k2yLMUBkmb+TLezS8a49e4dEiM3GBuyJJPkcubRrGMxW9DLnPfEQUAksXB5RdvxHdu37zgecHu8Oo/bJUx1tLd3TG11VIg15dma3buhcs/urCxjwqrVDo98ZW5kWKtxIt4pxHsW8WZRvDQL8hxP+Xd6gEN/ImeXDkm/Bvbw0vDCnrNn9yzA0PPvkOV/eOHot9beuIA4t+P6KrJE85EbON6Ece8BE2/iOdnvSZXkg2tXkc8FiErL7+HNPFlqhZ81SWvApNfrcH0uftlc68BMpruMk49CrfSDFFwmX4LfNElv48T0ml2IWUMZ5uhsAa8C2ZWSLqVSMJSiWyGl70Edk57PXMX5cs7ihKupFH7B51T3Z9flqNQmKgcEIM9O3Dk+NASPTEqfwaOn/gMlLcKXpZ+vy4JPcQ0r64sOXwGfSo+k6kFDltcWiDxnJ8OoWJxTKONzYZVQOagHUKAWg9kiBESDoGLR4u4tx3vOtGRB/En7+UI1aAeOfIk8CuxTh6SX4PhF99oZsjwizXSU+X4AScV3KeZZlJ0rY1ZkGiyIg8weuNMGcfkCH59a+xrCLjpFHkcbB+/+lLxMbmKsmlFGXrqyCV6DnCFMRjM19Mt/c+jgG68fnp86Np46fnRi7Bh8Jv3dD//x3J/+k3TuyJ//2dHn/voyk/aXTtw/h1oc/QXdBBHc6zGdJ7e/nPr1rpMD0wOLi8kd8F+D+6TbZHl/onVA+iC5LmO3rINZ1sKhiKA5StwQszu18uLw/+x5YXJbambw9OmhaWiS3iLLj8eaZizLYkz6bVTmoxrzyaeoW+VGHjTLadCFxUOpHwEvRoysp8UK9GOGTw9Pze3VT+1rHagyVbT6m0sD8+8m9b2TW/sdpvK63mbe/7dD8x0DA/2+hvJ8fV5ucVlDZ3yft7+lu67emq/XGEocIdwb2xFyjFyW84jsu6hHOpOQYyfQe1OpMbyeIFPkcVg7TZ6AVhkzZkzynOJ32UDTg+IS5DnpFxPSLyZfDbCQPX4c/SmKNmw5bd3yCQxT3gKYt87C95A1G+XNnzakKGd6tVJ31H7FoJgzz8aadoeC5/d7KwY62Viic0f8e6KzrsxeXjfgaW4jHn+Td6tnOnY+ktNhdRgMSl5P4B4fIjYd9V6FUTkulKxM9zFRguHDvb3dkXisO9UxGU/4212OiDh2e/aZhlqE/KPwqR0jg+EPWoYUny1HmRcQt4XmMsQsd1EWdS2SpgMFLVyIpiYOzM3WtlRrKxvd3raibZGRjkph4drp/MLWovxgzBOdCiA+Kus1GV/xvRxgYuQElX/Dn1H91+Ktye6dD0X7t8bizrA4NhCosvG+5mdmpk+K4Fx7/11xMDU8VGJV9Hag3BcRY76sN0+LqWjZFG6W0bJqeFH6LhlqHGxnu0fG5p9Kjm2pbMhur/Z0af+lZyrY6luYnV7oifhaIp1BRXdECePkOtUd5B6hFAQTdXgsHYpoGHdV5Rbxpif3xqLRHV3l1eTLXKbeUbQvJM3DkdBYdFqDmavkrhc+gneYGkZkOhVZrMOl9Ksu1DkMXmvGRvfqxI8iPSCwcpRTUgw+D9ix4MkBDx+587WCJoOfbPO6NaFRrjDo9hQ8PTnxdEtRKb+9VayMDv6Fv8IuivaKrz4zZrbpsyDVHEnBSVUG1IhtU6U6s5+whhKBb+jrC7Y6baNuT7B9h832z4/6vE94JalDxxVkZ9irqykPA3hZQrsZ5Zzoo50cWwppzzLBUhw0Blexrz4eCw6fAofOwJvyxsJ30JtWu8+jfWLI5kvkq0rtpVmctq3nYrEsTPgrX0lRG959667AvI5z9DQ3WTayQYT4OcGP01+PeSMhk60qx1jCxVKpcFufvaksI9dmIYASgBmUe5p0PXAp9UAU1HArca6/o/u7Yxc/TC4ioMD3X1Fsizox5zbrCqJR6go+J6toK3taV5LWdfNOMCm28ZrIajyT8/CCd33oDo3uLAlOIgeGknIjUrB5c6N7WyJxfmNvWMI9fodP0xf47G4YvYdPuNHVe576uxX9/X30d40clcYNT1eCPF0U4P2nx1NHDk+MPR0fDAWHBhvCyX+dPnF8Zvb5xbHkyPDg0MSkkjMi8CFikWNyM2eY7skZcqtCs0Ys2hSPdU12puJ9DVsrcxxCaPT2zhMN/03m6xsXtnfMhlaN+roZJSbLUe5rKDePsdIT42asYxL3C0rTfU+4tw12zeztdWwtzo7F/HUNo30NkYqcG581nZzaeaKsSNMuvf1cRXQq2rmrIVfhMIGXLpSfQ/tASLMnQld0KtbZ8jgcI9OxH8GN8R2Ac0uQr4eRL0E+c667lnzoVA6IEWxU5UJDT7NYZsrAmgEPb/H09I9qexLbdRwWDnsRrw+UucQifaxD2xIf0urLzCZPbbEqIysniz3cWWGrbq/v0BfotBkqNZurcYcrsD8ktlZnRGfO1bAZWfkFGRk5nKFQxm9ATL0kTL2d5lW/nFMEE+YXk5Hm1N6enuTgSMfiolDvLnYeAU3o0KHQ50le9h9cu4S9bP5mFkVvl62ON7AUa9sTrouX1gsd8S3hpjD0Sd+usDX4wa7UL7iGazFOaGej1K9mgGuvjL4Sny5nIcvXBytSO/6vzdjrTn4/XfPO4ZpieY2L9sN6wLUWZe36SM6dGu3BvjjDHek71eurz4TM6obOVjeO7hYq83931NQ98/ew8upf1jUurrx/qrL6xA+pPpSQmwomGrsO0SVYaOzeTP7x1xI3VpILJxJXV1Y+uvXNb95SavBdQdahgOKhh008/GOqgGZATHioFwIGuPbjEr+twsFWOnO0Fm35jb5AFl+rAtURWFn7SUdNVmteRnHxGKwczO8/Ye0A+jOCfC56AeVy8tkQ0u2ACZRT4AvSAmji2BM8C78n/XIIb/7IDSkIu6SL6XPdNHzMXFH6S8O9Z3Oykx7OCX0PT8nvc+UzCOooWJThSpLOvCFf4eMEzsd/GkczuGbfxhpFqkUZvi0Lv7G5RSL9G8AvmTlihK8rvwFgN26U/h2sc2Cl8jbfaZS3WGJohfEqsyobhxsbh3HuG3RsVGIZ7U6ekOug5/+thJn3PX5wcQTTxoMH18q2jQfETEsnoqQ+t4p709pRSns1TB4Y6+r7NpcPn7g3rCaTGbHYhadww23BYr7EVlAxR3Ym13pgRdllPDqlac8v98yl9YK3UbaJ9g3wQIkG3Auc98m7EIvBkQ1hbRwKk9rRQhkyT7fTWAuZ+i+gvU+u68EsktvrCmwL2krk7db4Cq25KG+OYhhqKec31SGW6FROO93/Ksfq7YX700TGppA55v8A+K4vJgAAeJydUsFO20AQfWuSiFYV4lZV6mGOQZUtx9BIwA2UIEUkoJhEXDewSawEL7KDonxE/wRx51v6C/2Ivqy3PaS3euWZN7NvZmdmF8AB3qBQfeO/WGFfffY4QENFHu/hm/rhcQ2H6qfHdRwEHz1u4DA4J1PVPtB6dVFbrMivexzgkxKP9zBW3z2uQdS7x3V8Vb88bkCCL7iExTM2KJBhhjlWECSIuY4RclX4lN4JWYILRJQ9aDxgwdg1SuqMPo0cj24vQt+xBm6/Ym4ZTdq5y2R4ksYSU1rWyTv67qlHSNHBkFJwRX1Dzy2tI2bEpX3eFNlsvpIkjo/DkPJUJhu5iKSnHxZ2XS4y0fmj9KJ+JAO7pjOTps1lYuZ6ORU7lTtzL6O0M0zlangzuk2PmPeaBaeugRIttovrfqrzskW07aHAk6sWA1s8aequa2TldMGxGTe0iJGCM/67+UI2Ysh7YRLNiIrVpr/lR5zQQtfmq64tZkaSKJYz+VNFODSzl6Uu6GqHLXadtP+tefcM7EZv36LhRsm7qO6hKjnGCTHGpigzTopHxyfyP/l/A3LufcV4nG3Myy4DAQBA0TMzVurZUqnETqhUKEJjT9GqR9WraiOZSSQNFvoDNv0h0i1fppOue5K7vUIj/1+KxjlNC4QiGVOmzZg1Z15WzoJFeUsKlq1YtWY9vWwo2bRlW9mOXXv2Hag4dORY1Un6PFNTd67hwqUr15putNy6c+/Bo7YnHc8Gvv3oB2EQ+fUXTEy+f8RvL71uN/4MkyRKktch7m8Y6QAAAAAAAAH//wACeJxjYGRgYOABYjEgZmJgBEJ3IGYB8xgABqsAdnicY2BgYGQAgtsKp6pB9NOm1/kwGgBO1gfEAAA=')format("woff");}.ffa{font-family:ffa;line-height:1.000000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffb;src:url('data:application/font-woff;base64,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')format("woff");}.ffb{font-family:ffb;line-height:0.923000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffc;src:url('data:application/font-woff;base64,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')format("woff");}.ffc{font-family:ffc;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffd;src:url('data:application/font-woff;base64,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')format("woff");}.ffd{font-family:ffd;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ffe;src:url('data:application/font-woff;base64,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')format("woff");}.ffe{font-family:ffe;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:fff;src:url('data:application/font-woff;base64,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')format("woff");}.fff{font-family:fff;line-height:0.908000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff10;src:url('data:application/font-woff;base64,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')format("woff");}.ff10{font-family:ff10;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff11;src:url('data:application/font-woff;base64,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')format("woff");}.ff11{font-family:ff11;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff12;src:url('data:application/font-woff;base64,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')format("woff");}.ff12{font-family:ff12;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
.ff13{font-family:sans-serif;visibility:hidden;}
@font-face{font-family:ff14;src:url('data:application/font-woff;base64,d09GRgABAAAAAAVkAA0AAAAACAwAAgADAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAFSAAAABoAAAAcpiahfEdERUYAAAUsAAAAHAAAAB4AJwAMT1MvMgAAAaQAAABBAAAAVlQPgCNjbWFwAAACAAAAAEcAAAFSIjApMGdhc3AAAAUkAAAACAAAAAj//wADZ2x5ZgAAAlgAAADaAAABFOhQfy9oZWFkAAABMAAAADMAAAA2LUManGhoZWEAAAFkAAAAHgAAACQE0AOJaG10eAAAAegAAAAYAAAAGAeHAHxsb2NhAAACSAAAAA4AAAAOAIoAUm1heHAAAAGEAAAAHQAAACAASQA8bmFtZQAAAzQAAAG2AAADQt/+T5Zwb3N0AAAE7AAAADgAAABDHrgclXicY2BkYGBgYjhismJPdTy/zVcGbuYXQBGGp02vG+C0JYMS01PGi0AuB1AtEAAAiOENMgB4nGNgZGBgvMgABMzyIJLpKUMKgyQDMmADADZTAmAAAHicY2BkYGBgY7BkANEMDExAzAhmO4D5DAAIgwCGAAAAeJxjYGTcxjiBgZWBgamLaQ+DIkMPiP7fw/iAwZCRCSjKwMrMAAOMQOwA4wSkuaYAKQUlG8aLYMmLcDUMAELJCv0AAAABGAAAAAAAAAFNAAAAAQAAAgIAQwMfADl4nGNgYGBmgGAZBkYGEPAB8hjBfBYGAyDNAYRMQFpBSVzJ5v9/BOv/47tv756E6gIDRjYGOJcRpIeJARUwQqwazgAA3LoLpAAAAAAAAAAAAAAAAFIAigAAeJxjYGRwZlBi3Md4kcGCgUFVhE1ZSZ9RnhFEq5mas4MpEzN7RnUQZWwkz6jPCKLFRNnNwZQIGz+jmLgY4z5Bbk6ZfHZ2fl4efr56Hk5uQS6+7l4xQW52vnpeRmTRHt1EsTncQqJ+QSFcAgJcy6I4hbh5uNicHLmEuIW4oqYKgUSXR0NFRXS5GRgYGSwZGpieMpYwqAI5YLep6zEqK/ExgxwIdpiYuByjsZEdM8hVTE/j/PT9TIw8NfgU1BXEmZh4+TEEGAP8mgwMdLXZRZWs1SSUkTkMAC02KMgAAHicrVLLattAFD2j2IbQ4mVWWVzaTQKRkGUwJKuSEBtMZAcrDtmOEtkWtjVBUjBe9IsS8kf9lx5J00JLyaoadO+578cMgC7eodB897+xQld9tdhBR32z+AA99WpxC0fOJ4vb6Dq/fDrUf6enah1SequjKqxwrNoWO/isAosPEKuRxS2cqR8Wt3HsfLG4gzNniisYPGOPHCmWWKGEIIDP04fL0+BzamN6CS7hkY6h8Yg1Y3coyFPqNDI81TYPYe01qe2NZ+VxQjmrMyWspLHBgpKp6R11D+RzRLjGjFQwIp9Sc0vplBlxZZ73ebpclRL4ft91Sc8l3sulJ2P9uDa7Yp2Kzp5k7IWeTMyOylROTCZxstKbhZiF3CUPMo+uZ5GMZtP5bXTKvDdsOGRDJduKOOaWLRq2V3Bw3IShLlfRfhubTUG5miqnS9U/JibfavJhPVpZ85yLTOo1elyd4IL/RxVcjpkw5oWyZnQTMaC+Zy8goIShycqhyZeJBJ4vF/JnX+4sWb5sdE7DwO1xM8Hg47n+rop/56tecEJzwRtsbq8Zq3ofQmOSFyn3y5b8vvyfij8BhouTVQAAeJxjYGJg+P/x2+7/ExjUGLABNiBmZGBiYGZkYmTmSSwuSS3KLM7OTSzJYC/OzM3MSSwCAJyrDYAAAAAB//8AAnicY2BkYGDgAWIxIGZiYARCViBmAfMYAAPVADR4nGNgYGBkAILbCqeqQfTTptcNMBoAT4AH5gAA')format("woff");}.ff14{font-family:ff14;line-height:0.431000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff15;src:url('data:application/font-woff;base64,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')format("woff");}.ff15{font-family:ff15;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff16;src:url('data:application/font-woff;base64,d09GRgABAAAAAATcAA0AAAAAB0QAAgADAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEwAAAABoAAAAcpiahgkdERUYAAASkAAAAGwAAAB4AJwALT1MvMgAAAaQAAABBAAAAVlO4f7NjbWFwAAAB/AAAAEYAAAFKRGzkw2dhc3AAAAScAAAACAAAAAj//wADZ2x5ZgAAAlAAAABnAAAAbDQU7jxoZWFkAAABMAAAADIAAAA2LV4ao2hoZWEAAAFkAAAAHgAAACQEkgOjaG10eAAAAegAAAAUAAAAFAWgADtsb2NhAAACRAAAAAwAAAAMAAAANm1heHAAAAGEAAAAHQAAACAASAAnbmFtZQAAArgAAAG2AAADQtz+SpZwb3N0AAAEcAAAACkAAAA0cHnCwnicY2BkYGBgYjhy4Lc2Wzy/zVcGbuYXQBGGp02vm+G0NUMV0z/GKiCXA6gWCACHaQ0tAAB4nGNgZGBgrGIAAmYrEMn0jyGFQZIBGbACADBHAjwAAHicY2BkYGBgZVBhANEMDExAzAhmO4D5DAAGWwBwAAAAeJxjYGScyziBgZWBgamLaQ+DIkMPiP7fw/iAwZCRCSjKwMrMAAOMQOwA4wSkuaYAKQUlG8YqsGQVXA0DADEqCjYAAAABGAAAAAAAAAFNAAAAAQAAAzoAO3icY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUlGz+/wfywfT/x3dPQNUDASMbA5zDyAQkmBhQASPEiuEMACp9CVIAAAAAAAAAAAAAAAAANnicY2BksGaoYvrHWMWgzMDAKMKmrKSmrseorMTHxC7CB6RNTcyMjcTE5RiNjczMgUymfwlBBsGmBr5aYnp6ckxMHGwCMAHbIGYmPgHG0OAOYyNdPQEVFz1mLh4VCC/aVp0BAKK+EmYAeJytUstq20AUPaPYhpDiZVdZXNpNApGQZTBNViUhNpjIDlZcsh0lsi1sa4KkYLzoFyXkj/ovPZKmhZaSVTXo3nPfjxkAXbxBofm+/cYKXfXZYgcd9dXiA/TUi8UtfHSOLG6j6/zy6VD/nZ6qdUjptY6qsMKxalvs4IMKLD5ArEYWt3CmfljcxrHzyeIOzpwprmDwhD1ypFhihRKCAD5PHy5Pg8+pjekluIRHOobGA9aM3aEgT6nTyPBY2zyEtdektjeelccJ5azOlLCSxgYLSqamd9Tdk88R4RozUsGIfErNLaVTZsSVedrn6XJVSuD7fdclPZd4L5eejPXD2uyKdSo6e5SxF3oyMTsqUzkxmcTJSm8WYhZyl9zLPLqeRTKaTee30Snz3rDhkA2VbCvimFu2aNhegS80hqEuV9F+G5tNQbmaKqdL1T8mJt9q8mE9WlnznItM6jV6XJ3ggv97FVyOmTDmmbJmdBMxoL5nLyCghKHJyqHJl4kEni8X8mdf7ixZPm90TsPA7XEzweD9uf6uin/nq15wQnPBG2xurxmreh9CY5IXKffLlvy+/J+KPwGAiZNNAAB4nGNgYmD4//Hb7v9zGVQYsAFWIGZkYGJgZmRiL87MzcxJLAIAApcIagAAAAAAAAH//wACeJxjYGRgYOABYjEgZmJgBEIWMAbxGAADygAzAHicY2BgYGQAgtsKp6pB9NOm180wGgBPngfsAAA=')format("woff");}.ff16{font-family:ff16;line-height:0.256000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff17;src:url('data:application/font-woff;base64,d09GRgABAAAAAATYAA0AAAAAB0AAAgADAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEvAAAABoAAAAcpiahoEdERUYAAASgAAAAGwAAAB4AJwALT1MvMgAAAaQAAABFAAAAVlQpf9pjbWFwAAACAAAAAEYAAAFKQxjlbWdhc3AAAASYAAAACAAAAAj//wADZ2x5ZgAAAlQAAABYAAAAWNTgfARoZWFkAAABMAAAADMAAAA2LgwawWhoZWEAAAFkAAAAIAAAACQFyQRGaG10eAAAAewAAAAUAAAAFAZOADdsb2NhAAACSAAAAAwAAAAMAAAALG1heHAAAAGEAAAAHQAAACAASAAfbmFtZQAAAqwAAAG+AAADTjuk55Zwb3N0AAAEbAAAACwAAAA34MBQwnicY2BkYGBgYjhyT3Nbfjy/zVcGbuYXQBGGp02vJ8Fp8/9fmdcz/gdyOYBqgQAArL8POAB4nGNgZGBg/P//KwMD8wsGIGBez5DCIMmADFgBhToFFXicY2BkYGBgZZBhANEMDExAzAhmO4D5DAAFkwBoAAAAeJxjYGT8wjiBgZWBgamLaQ+DIkMPiP7fw/iAwZCRCSjKwMrMAAOMQKwA4wSkuaaA+IqTGP///wqU/M/ADVXDAAB8Rw3LAAAAARgAAAAAAAABTQAAAAEAAAPoADd4nGNgYGBmgGAZBkYGEHAB8hjBfBYGDSDNBqQZGZgYFBQn/f8P5IPp/4/vFUHVAwEjGwOcw8gEJJgYUAEjxIrhDACLGwmnAAAAAAAAAAAAAAAAACwAAQA3//UDrwH/ABsAAAAUBw4BBwYrASI1NjchIjQzISYnNDsBMhceARcDrwhRbg4CCRILGXb9CxUVAvV2GQsSCQIOblEBAhACHYFUCQ2PVShVjw0JVIEdeJytUstq20AUPaPYhkJJF110U8rdFBKKhCxTQ7KMiUNN5AQrLt6OY9kWtjVBUjD+g3xMKf2n/kiPRtMuvGg3ldDcc899zD0zAnCK71Bonq9/sMIb9dFhDx01cPgEkfrhcAvvvLcOt3HqfXG4Q/6Fmar1it43W1VjhQ+q7bCH1+qzwydYqJHDLQTqp8NtvPc+OdxB4M0wgMETDiiQYYU1KggihHx78Pk2+ILsnFmCKwRcR9B4xIa1e5S0GTmNHAsbCxDbrLGNN5l1xhn93HZKuZPGFkt6xq4P5Ga0UyS4xoSr4Ib2jsw9vXN2xMA8HYpsta4kCsOe73O9kPlBrgIZ6ceN2ZebTHS+kFEQBzI2e5KZnJlc5ulab5dilvKQzmSaXE8SuZncTe+Tc/a95cAxB6o4VkKZO45oOF6JLsXjNo51tU4Ou7nZll0StbCCWbUEjE2x07RDq66ytuBZpvYkAzYQXPL7+yY+taaseiajWd/U9Ml33S1E9DA0eTU0xSqVKAjlUo5G8yfp6nmrC0b6fpfnE/X/pe5442O1v1vWv3LKeMmrbK6xEVf/KMJgWpQZD5pjhT35b5v+AjbglOUAAHicY2BiYPj/8dvu/00MGgzYACsQMzIwMTAzMnElFhXllxdlpmeUAAAapwmuAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH006bXk2A0AFA0CAoAAA==')format("woff");}.ff17{font-family:ff17;line-height:0.522000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff18;src:url('data:application/font-woff;base64,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')format("woff");}.ff18{font-family:ff18;line-height:0.922000;font-style:normal;font-weight:normal;visibility:visible;}
@font-face{font-family:ff19;src:url('data:application/font-woff;base64,d09GRgABAAAAAATAAA0AAAAABtgAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEpAAAABoAAAAcpiah1EdERUYAAASIAAAAGwAAAB4AJwALT1MvMgAAAZwAAAA/AAAAVlVXVldjbWFwAAAB8AAAAEYAAAFKzKIgqGdhc3AAAASAAAAACAAAAAj//wADZ2x5ZgAAAkQAAADSAAAA4MubV/JoZWFkAAABMAAAADAAAAA2Lgwb12hoZWEAAAFgAAAAGQAAACQHQgPuaG10eAAAAdwAAAAUAAAAFAcqAD5sb2NhAAACOAAAAAwAAAAMACgAmG1heHAAAAF8AAAAHQAAACAASQBDbmFtZQAAAxgAAAFGAAACZKcJF/pwb3N0AAAEYAAAAB4AAAA0TLakpHicY2BkYGBgZHBUn3LhXzy/zVcGbuYXQBGGp02v1yDTzC+YI4EUBwMTiAcAgYAMr3icY2BkYGCOZAAC5hdQkpEBFbACADPuAjoAAAB4nGNgZGBgYGVwYGBiAAEQycgAEnMA8xkACS4AjQAAAHicY2Bk/MI4gYGVgYGpi2kPAwNDD4RmfMBgyMgEFGVgZWaAAUYBBgQISHNNAVIKz8KZI0F8CMnACCIA6SYJUgAB9AA+AAAAAAFNAAAAAQAAA+gAAHicY2BgYGaAYBkGRgYQcAHyGMF8FgYNIM0GpBkZmBgUnoX//w/kg+n/jyXXQtUDASMbA5zDyAQkmBhQASPEiuEMACjNCjEAAAAAABQAFAAUABQAcHicHcsxCsJAEIXhmSxMJAHDxmw6hRg3lopuYiEaIUewskkRW3ttPIC9d7C38BxWNmIlgmcQWVwzxcCD/wML5gB4YStgYANMxjxmPOL7zyfH3dx6fF9s9T0BWGCOvU0nITdCBBRH3STlKhtHozYGZpHgQWhWNkOVTXEUtripugNEMi9J1QT7Sd2HzC8LPSzKssAD53or01TiVSqn0Ws4N+E13UofqUk5EW7WjvCw7QlcnmtxLUq/5yuph392tl0X7/rpidrQgsg2qHI6QsAPxO4tjgAAeJyNkD1Ow0AQhd/mT4JIiAKlnorOxnbhIlRWoqShChIlYMkrJ1LijdZRopTcAHEKREHFAag4F8+blUhBEVur+Wbn7+0AuMAnFA7fDZ49K/Tx7rmFLr49t3Gtrjx30Ff3nru4VC+ee7z/YKbqnNF7dFUNKwzw6rmFc3x5buMOP547GKhbz12IevLc4/0bRjBYYw+LBUrMsYFgjBxbaNKUVKFgXJAgQowUITnDkr8cVdXO07SatqkumImRWe/topxvZJxvtUzzqthLEsVpKNlyKS5Ui9W1tltdsGBCPRX7Zdi5bgYrWkxMtcl2ujYrOjN32yjDzKzy6q+qsZaKtNMbUrFgyPN/10MsRcB3Be59CT03a2JsqSUJIxnK0Wx6aRAHSZSkp0l9cOuouaYmVziiWWLorTBB23phKomiOOSRk9r+AvZ2Z2sAAHicY2BiwA9YgZiRgYmBmZGJvTQv09XM1BwAC8ICSwAAAAAAAf//AAJ4nGNgZGBg4AFiMSBmYmAEQhYwBvEYAAPKADMAeJxjYGBgZACC2wqnqkH006bXa2A0AFE4CD4AAA==')format("woff");}.ff19{font-family:ff19;line-height:0.857000;font-style:normal;font-weight:normal;visibility:visible;}
.m0{transform:matrix(0.250000,0.000000,0.000000,0.250000,0,0);-ms-transform:matrix(0.250000,0.000000,0.000000,0.250000,0,0);-webkit-transform:matrix(0.250000,0.000000,0.000000,0.250000,0,0);}
.m1{transform:none;-ms-transform:none;-webkit-transform:none;}
.v0{vertical-align:0.000000px;}
.ls0{letter-spacing:0.000000px;}
.sc_{text-shadow:none;}
.sc0{text-shadow:-0.015em 0 transparent,0 0.015em transparent,0.015em 0 transparent,0 -0.015em transparent;}
@media screen and (-webkit-min-device-pixel-ratio:0){
.sc_{-webkit-text-stroke:0px transparent;}
.sc0{-webkit-text-stroke:0.015em transparent;text-shadow:none;}
}
.ws0{word-spacing:0.000000px;}
._35{margin-left:-8.152175px;}
._d{margin-left:-5.182646px;}
._5{margin-left:-3.844782px;}
._3{margin-left:-1.818300px;}
._b{width:1.115811px;}
._0{width:3.073600px;}
._f{width:4.320004px;}
._14{width:6.240614px;}
._29{width:8.577781px;}
._11{width:10.501390px;}
._10{width:11.559482px;}
._a{width:13.270183px;}
._e{width:14.490727px;}
._7{width:16.116719px;}
._12{width:17.266060px;}
._8{width:18.429016px;}
._c{width:20.371604px;}
._6{width:21.691454px;}
._23{width:23.636916px;}
._43{width:24.745172px;}
._22{width:25.935769px;}
._21{width:27.200726px;}
._2e{width:28.710643px;}
._4{width:31.241700px;}
._9{width:32.422412px;}
._26{width:33.771608px;}
._1{width:36.288314px;}
._1e{width:37.658880px;}
._2{width:40.911750px;}
._30{width:43.261703px;}
._40{width:48.089433px;}
._2f{width:51.428202px;}
._2a{width:56.488320px;}
._32{width:67.937132px;}
._1f{width:75.317760px;}
._33{width:85.088788px;}
._2d{width:94.147200px;}
._3d{width:96.296296px;}
._1a{width:106.362635px;}
._36{width:112.976640px;}
._4a{width:118.754490px;}
._17{width:131.052902px;}
._24{width:150.635520px;}
._4f{width:153.231966px;}
._42{width:169.464960px;}
._3a{width:182.373345px;}
._31{width:186.445696px;}
._27{width:188.294400px;}
._50{width:203.620115px;}
._15{width:207.123840px;}
._46{width:225.953280px;}
._52{width:237.454336px;}
._16{width:238.577971px;}
._1d{width:256.152115px;}
._51{width:271.174682px;}
._19{width:275.017421px;}
._2b{width:301.271040px;}
._4b{width:322.274963px;}
._1c{width:356.719346px;}
._2c{width:357.759360px;}
._18{width:390.238770px;}
._3c{width:451.369323px;}
._1b{width:461.920225px;}
._37{width:470.402364px;}
._38{width:486.679003px;}
._3b{width:508.765039px;}
._3e{width:536.654044px;}
._3f{width:542.475117px;}
._39{width:551.330248px;}
._4c{width:626.641142px;}
._28{width:640.200960px;}
._44{width:734.348160px;}
._13{width:831.550389px;}
._45{width:861.470277px;}
._41{width:909.960568px;}
._47{width:922.393976px;}
._54{width:927.992746px;}
._4e{width:1112.497580px;}
._53{width:1144.831062px;}
._49{width:1150.419484px;}
._34{width:1174.983442px;}
._25{width:1224.689047px;}
._20{width:1346.745736px;}
._4d{width:1369.348599px;}
._48{width:1407.318323px;}
.fcf{color:rgb(8,69,125);}
.fcd{color:rgb(16,136,110);}
.fc0{color:rgb(35,55,59);}
.fc1{color:rgb(250,250,250);}
.fc2{color:rgb(255,255,255);}
.fc6{color:rgb(102,102,102);}
.fc8{color:rgb(156,102,0);}
.fce{color:rgb(57,75,79);}
.fc5{color:rgb(0,128,0);}
.fc4{color:rgb(176,0,64);}
.fcc{color:rgb(171,92,31);}
.fc7{color:rgb(61,122,122);}
.fca{color:rgb(173,34,49);}
.fc3{color:rgb(0,0,255);}
.fc9{color:rgb(186,33,33);}
.fcb{color:transparent;}
.fs9{font-size:23.910400px;}
.fs6{font-size:27.895200px;}
.fs5{font-size:31.880400px;}
.fs8{font-size:35.865600px;}
.fs4{font-size:39.850400px;}
.fs7{font-size:43.636400px;}
.fs3{font-size:47.820800px;}
.fs2{font-size:57.384800px;}
.fs1{font-size:82.650000px;}
.fs0{font-size:99.148400px;}
.y1e6{bottom:-11.769000px;}
.y0{bottom:-0.500000px;}
.y1e5{bottom:0.834000px;}
.y1d8{bottom:3.823000px;}
.ye9{bottom:3.848000px;}
.yb9{bottom:4.732000px;}
.y18c{bottom:7.820000px;}
.y200{bottom:7.857000px;}
.y224{bottom:7.908000px;}
.y12b{bottom:8.261000px;}
.y198{bottom:9.452000px;}
.y66{bottom:10.617000px;}
.y17d{bottom:10.642000px;}
.y155{bottom:11.250000px;}
.ycb{bottom:11.743000px;}
.y171{bottom:11.766000px;}
.y20e{bottom:12.098000px;}
.y102{bottom:12.430000px;}
.y14{bottom:13.018000px;}
.y1e4{bottom:13.437000px;}
.y163{bottom:14.183000px;}
.y27a{bottom:14.213000px;}
.ye8{bottom:14.732000px;}
.y235{bottom:15.708000px;}
.yf6{bottom:15.744000px;}
.yd7{bottom:16.111000px;}
.y1d7{bottom:16.425000px;}
.y1ad{bottom:16.600000px;}
.yb8{bottom:17.335000px;}
.y1f5{bottom:17.795000px;}
.y1c4{bottom:19.030000px;}
.y1e{bottom:19.154000px;}
.y73{bottom:19.369000px;}
.y11d{bottom:20.256000px;}
.y189{bottom:20.422000px;}
.y1ff{bottom:20.459000px;}
.y26e{bottom:20.778000px;}
.y12a{bottom:20.864000px;}
.y2a{bottom:20.895000px;}
.y12{bottom:21.473000px;}
.y197{bottom:22.054000px;}
.yca{bottom:22.627000px;}
.y1f{bottom:22.769000px;}
.y65{bottom:23.220000px;}
.y17c{bottom:23.245000px;}
.y154{bottom:23.853000px;}
.y10e{bottom:24.206000px;}
.y20d{bottom:24.700000px;}
.y101{bottom:25.033000px;}
.y279{bottom:25.097000px;}
.ye7{bottom:25.616000px;}
.y1e3{bottom:26.039000px;}
.y24c{bottom:26.582000px;}
.y234{bottom:26.592000px;}
.y13{bottom:26.679000px;}
.y1b8{bottom:26.697000px;}
.y162{bottom:26.786000px;}
.y35{bottom:27.283000px;}
.y170{bottom:27.507000px;}
.y1a1{bottom:27.561000px;}
.yf5{bottom:28.346000px;}
.y1d6{bottom:29.028000px;}
.y223{bottom:29.029000px;}
.y1ac{bottom:29.202000px;}
.yb7{bottom:29.938000px;}
.y1f4{bottom:30.398000px;}
.y148{bottom:30.472000px;}
.y136{bottom:30.950000px;}
.y1c3{bottom:31.632000px;}
.y72{bottom:31.972000px;}
.y188{bottom:33.025000px;}
.y129{bottom:33.466000px;}
.yc9{bottom:33.511000px;}
.y11c{bottom:34.004000px;}
.y18b{bottom:34.159000px;}
.y7{bottom:34.633000px;}
.y196{bottom:34.657000px;}
.y64{bottom:35.822000px;}
.y17b{bottom:35.847000px;}
.y278{bottom:35.981000px;}
.ye6{bottom:36.500000px;}
.y10d{bottom:36.809000px;}
.y3f{bottom:37.079000px;}
.y20c{bottom:37.303000px;}
.y264{bottom:37.307000px;}
.y233{bottom:37.476000px;}
.y100{bottom:37.636000px;}
.y1e2{bottom:38.642000px;}
.y1b7{bottom:39.299000px;}
.y99{bottom:39.349000px;}
.y161{bottom:39.388000px;}
.y29{bottom:40.098000px;}
.y1d{bottom:40.150000px;}
.y24b{bottom:40.331000px;}
.y7f{bottom:40.774000px;}
.yf4{bottom:40.949000px;}
.yd6{bottom:41.317000px;}
.y1d5{bottom:41.631000px;}
.y25b{bottom:41.662000px;}
.y141{bottom:42.042000px;}
.yb6{bottom:42.540000px;}
.y222{bottom:42.777000px;}
.y34{bottom:42.865000px;}
.y1f3{bottom:43.000000px;}
.y1a0{bottom:43.301000px;}
.y1c2{bottom:44.235000px;}
.yc8{bottom:44.395000px;}
.y11{bottom:44.534000px;}
.y71{bottom:44.575000px;}
.y187{bottom:45.627000px;}
.y128{bottom:46.069000px;}
.y26d{bottom:46.323000px;}
.y135{bottom:46.532000px;}
.y241{bottom:47.075000px;}
.y1af{bottom:47.259000px;}
.y49{bottom:47.319000px;}
.ye5{bottom:47.384000px;}
.y11b{bottom:47.752000px;}
.y52{bottom:47.988000px;}
.y232{bottom:48.360000px;}
.y63{bottom:48.425000px;}
.y17a{bottom:48.450000px;}
.y153{bottom:49.058000px;}
.y10c{bottom:49.411000px;}
.y21a{bottom:49.587000px;}
.y18a{bottom:49.740000px;}
.y20b{bottom:49.906000px;}
.y211{bottom:50.238000px;}
.y16f{bottom:50.907000px;}
.y6{bottom:51.308000px;}
.y1b6{bottom:51.902000px;}
.y25a{bottom:52.546000px;}
.y7e{bottom:53.376000px;}
.yf3{bottom:53.552000px;}
.yd5{bottom:53.919000px;}
.y24a{bottom:54.079000px;}
.y1d4{bottom:54.233000px;}
.y1ab{bottom:54.408000px;}
.y140{bottom:54.645000px;}
.ya9{bottom:55.191000px;}
.yc7{bottom:55.279000px;}
.y1f2{bottom:55.354000px;}
.y1c1{bottom:56.838000px;}
.y70{bottom:57.177000px;}
.y221{bottom:57.497000px;}
.y277{bottom:57.750000px;}
.y87{bottom:58.081000px;}
.y186{bottom:58.230000px;}
.y127{bottom:58.672000px;}
.y19f{bottom:59.042000px;}
.y231{bottom:59.245000px;}
.y28{bottom:59.301000px;}
.y48{bottom:59.673000px;}
.y240{bottom:59.678000px;}
.y195{bottom:59.862000px;}
.y147{bottom:60.001000px;}
.y1fe{bottom:60.638000px;}
.y263{bottom:60.859000px;}
.y62{bottom:61.028000px;}
.y179{bottom:61.053000px;}
.y3e{bottom:61.104000px;}
.y1c{bottom:61.146000px;}
.y11a{bottom:61.501000px;}
.y152{bottom:61.660000px;}
.ya1{bottom:61.762000px;}
.y10b{bottom:62.014000px;}
.y20a{bottom:62.508000px;}
.yff{bottom:62.841000px;}
.y98{bottom:63.374000px;}
.y259{bottom:63.430000px;}
.y10{bottom:63.737000px;}
.y1e1{bottom:63.847000px;}
.y33{bottom:64.399000px;}
.y160{bottom:64.594000px;}
.y16e{bottom:64.770000px;}
.y219{bottom:65.168000px;}
.yab{bottom:65.979000px;}
.yc6{bottom:66.163000px;}
.y1d3{bottom:66.836000px;}
.y1aa{bottom:67.010000px;}
.y13f{bottom:67.248000px;}
.y57{bottom:67.481000px;}
.yb5{bottom:67.746000px;}
.y276{bottom:68.634000px;}
.ye4{bottom:69.152000px;}
.y1c0{bottom:69.440000px;}
.y230{bottom:70.129000px;}
.y134{bottom:70.232000px;}
.y249{bottom:70.791000px;}
.y1f1{bottom:70.946000px;}
.y12d{bottom:71.274000px;}
.y26c{bottom:71.867000px;}
.y23f{bottom:72.280000px;}
.y194{bottom:72.465000px;}
.y51{bottom:73.532000px;}
.y61{bottom:73.630000px;}
.y178{bottom:73.655000px;}
.y86{bottom:73.663000px;}
.y47{bottom:74.268000px;}
.y258{bottom:74.314000px;}
.ya0{bottom:74.365000px;}
.y10a{bottom:74.617000px;}
.y209{bottom:75.111000px;}
.yfe{bottom:75.444000px;}
.y146{bottom:75.582000px;}
.y97{bottom:75.976000px;}
.y1fd{bottom:76.219000px;}
.y1e0{bottom:76.450000px;}
.y3d{bottom:76.686000px;}
.yc5{bottom:77.048000px;}
.y119{bottom:77.082000px;}
.y1b5{bottom:77.107000px;}
.y15f{bottom:77.196000px;}
.y27{bottom:78.504000px;}
.y7d{bottom:78.582000px;}
.y16d{bottom:78.633000px;}
.yf2{bottom:78.757000px;}
.y220{bottom:79.031000px;}
.yd4{bottom:79.125000px;}
.ya8{bottom:79.216000px;}
.y1d2{bottom:79.439000px;}
.y275{bottom:79.518000px;}
.y1a9{bottom:79.613000px;}
.y13e{bottom:79.850000px;}
.y32{bottom:79.980000px;}
.ye3{bottom:80.036000px;}
.yb4{bottom:80.348000px;}
.y22f{bottom:81.013000px;}
.y1bf{bottom:82.043000px;}
.y1b{bottom:82.142000px;}
.y6f{bottom:82.383000px;}
.yf{bottom:82.940000px;}
.y185{bottom:83.435000px;}
.y126{bottom:83.877000px;}
.y262{bottom:84.410000px;}
.y23e{bottom:84.883000px;}
.y193{bottom:85.067000px;}
.y257{bottom:85.198000px;}
.y50{bottom:85.885000px;}
.y60{bottom:86.233000px;}
.y177{bottom:86.258000px;}
.y8e{bottom:86.333000px;}
.y1f0{bottom:86.527000px;}
.y151{bottom:86.866000px;}
.y109{bottom:87.219000px;}
.y208{bottom:87.714000px;}
.yc4{bottom:87.932000px;}
.yfd{bottom:88.046000px;}
.y19e{bottom:88.267000px;}
.y96{bottom:88.579000px;}
.y1df{bottom:89.053000px;}
.y218{bottom:89.193000px;}
.y1b4{bottom:89.710000px;}
.y15e{bottom:89.799000px;}
.y274{bottom:90.402000px;}
.ye2{bottom:90.921000px;}
.y7c{bottom:91.184000px;}
.yf1{bottom:91.360000px;}
.yd3{bottom:91.727000px;}
.y22e{bottom:91.897000px;}
.y1d1{bottom:92.041000px;}
.y1a8{bottom:92.216000px;}
.y13d{bottom:92.453000px;}
.y16c{bottom:92.496000px;}
.y56{bottom:92.686000px;}
.yb3{bottom:92.951000px;}
.y21f{bottom:94.613000px;}
.y85{bottom:94.699000px;}
.ya7{bottom:94.797000px;}
.y74{bottom:94.985000px;}
.y248{bottom:95.314000px;}
.y133{bottom:95.776000px;}
.y184{bottom:96.038000px;}
.y256{bottom:96.082000px;}
.y3c{bottom:96.252000px;}
.y125{bottom:96.480000px;}
.y8d{bottom:97.217000px;}
.y26b{bottom:97.411000px;}
.y23d{bottom:97.486000px;}
.y192{bottom:97.670000px;}
.y26{bottom:97.707000px;}
.yc3{bottom:98.816000px;}
.y5f{bottom:98.836000px;}
.y1ef{bottom:99.130000px;}
.y150{bottom:99.468000px;}
.y9f{bottom:99.570000px;}
.y1fc{bottom:99.771000px;}
.y46{bottom:99.812000px;}
.y207{bottom:100.316000px;}
.y4f{bottom:100.481000px;}
.y118{bottom:100.634000px;}
.y210{bottom:100.649000px;}
.y95{bottom:101.182000px;}
.y273{bottom:101.286000px;}
.y1de{bottom:101.655000px;}
.ye1{bottom:101.805000px;}
.ye{bottom:102.143000px;}
.y1b3{bottom:102.313000px;}
.y15d{bottom:102.402000px;}
.y1a{bottom:103.139000px;}
.y7b{bottom:103.787000px;}
.y110{bottom:103.877000px;}
.yf0{bottom:103.962000px;}
.y19d{bottom:104.008000px;}
.yd2{bottom:104.330000px;}
.y1d0{bottom:104.644000px;}
.y1a7{bottom:104.818000px;}
.y13c{bottom:105.055000px;}
.y31{bottom:105.524000px;}
.yb2{bottom:105.554000px;}
.y16b{bottom:106.359000px;}
.y145{bottom:106.504000px;}
.y255{bottom:106.966000px;}
.y1be{bottom:107.248000px;}
.y6e{bottom:107.588000px;}
.y217{bottom:107.764000px;}
.y261{bottom:107.962000px;}
.y8c{bottom:108.101000px;}
.y183{bottom:108.641000px;}
.y5{bottom:108.707000px;}
.y124{bottom:109.082000px;}
.yc2{bottom:109.700000px;}
.y21e{bottom:110.194000px;}
.y191{bottom:110.273000px;}
.y84{bottom:110.280000px;}
.y247{bottom:110.896000px;}
.y5e{bottom:111.438000px;}
.y176{bottom:111.463000px;}
.y1ee{bottom:111.732000px;}
.y3b{bottom:111.834000px;}
.y14f{bottom:112.071000px;}
.y45{bottom:112.165000px;}
.y108{bottom:112.425000px;}
.ye0{bottom:112.689000px;}
.y111{bottom:112.872000px;}
.y206{bottom:112.919000px;}
.yfc{bottom:113.252000px;}
.ya6{bottom:113.368000px;}
.y22d{bottom:113.665000px;}
.y1dd{bottom:114.258000px;}
.y117{bottom:114.382000px;}
.y1b2{bottom:114.915000px;}
.y1fb{bottom:115.352000px;}
.yaa{bottom:116.390000px;}
.yef{bottom:116.565000px;}
.y24{bottom:116.910000px;}
.yd1{bottom:116.933000px;}
.y1cf{bottom:117.247000px;}
.y1a6{bottom:117.421000px;}
.y254{bottom:117.850000px;}
.y55{bottom:117.891000px;}
.y19c{bottom:119.749000px;}
.y1bd{bottom:119.851000px;}
.y6d{bottom:120.191000px;}
.y16a{bottom:120.222000px;}
.yc1{bottom:120.584000px;}
.y157{bottom:121.063000px;}
.y30{bottom:121.106000px;}
.y182{bottom:121.243000px;}
.y132{bottom:121.320000px;}
.yd{bottom:121.346000px;}
.y12c{bottom:121.685000px;}
.y25{bottom:122.116000px;}
.y23c{bottom:122.691000px;}
.y272{bottom:122.805000px;}
.y1ae{bottom:122.875000px;}
.y26a{bottom:122.955000px;}
.y144{bottom:123.478000px;}
.y260{bottom:123.543000px;}
.ydf{bottom:123.573000px;}
.y5d{bottom:124.041000px;}
.y175{bottom:124.066000px;}
.y19{bottom:124.135000px;}
.y1ed{bottom:124.335000px;}
.y22c{bottom:124.549000px;}
.y9e{bottom:124.776000px;}
.y107{bottom:125.027000px;}
.y205{bottom:125.522000px;}
.y21d{bottom:125.776000px;}
.yfb{bottom:125.854000px;}
.y83{bottom:125.862000px;}
.y4e{bottom:126.025000px;}
.y216{bottom:126.334000px;}
.y94{bottom:126.387000px;}
.y246{bottom:126.477000px;}
.y44{bottom:126.761000px;}
.y3a{bottom:127.415000px;}
.y1b1{bottom:127.518000px;}
.y15c{bottom:127.607000px;}
.y116{bottom:128.131000px;}
.y253{bottom:128.734000px;}
.yee{bottom:128.919000px;}
.ya5{bottom:128.949000px;}
.y7a{bottom:128.992000px;}
.yd0{bottom:129.535000px;}
.y1ce{bottom:129.849000px;}
.y8b{bottom:129.869000px;}
.y1a5{bottom:130.024000px;}
.y212{bottom:130.058000px;}
.y13b{bottom:130.261000px;}
.yb1{bottom:130.759000px;}
.yc0{bottom:131.468000px;}
.y4{bottom:131.541000px;}
.y1bc{bottom:132.453000px;}
.y6c{bottom:132.793000px;}
.y181{bottom:133.846000px;}
.y169{bottom:134.085000px;}
.y123{bottom:134.288000px;}
.yde{bottom:134.457000px;}
.y23b{bottom:135.294000px;}
.y22b{bottom:135.433000px;}
.y190{bottom:135.478000px;}
.y5c{bottom:136.395000px;}
.y174{bottom:136.419000px;}
.y1fa{bottom:136.887000px;}
.y1ec{bottom:136.938000px;}
.y14e{bottom:137.276000px;}
.y9d{bottom:137.378000px;}
.y106{bottom:137.630000px;}
.y204{bottom:138.124000px;}
.y2b{bottom:138.248000px;}
.y4d{bottom:138.378000px;}
.yfa{bottom:138.457000px;}
.y269{bottom:138.536000px;}
.y93{bottom:138.990000px;}
.y1dc{bottom:139.463000px;}
.y252{bottom:139.619000px;}
.y15b{bottom:139.961000px;}
.yc{bottom:140.549000px;}
.y8a{bottom:140.753000px;}
.y21c{bottom:141.357000px;}
.y271{bottom:141.580000px;}
.y79{bottom:141.595000px;}
.y115{bottom:141.879000px;}
.y245{bottom:142.059000px;}
.ycf{bottom:142.138000px;}
.ybf{bottom:142.352000px;}
.y1cd{bottom:142.452000px;}
.y2f{bottom:142.640000px;}
.y54{bottom:143.096000px;}
.yb0{bottom:143.362000px;}
.y215{bottom:144.904000px;}
.y131{bottom:145.021000px;}
.y1bb{bottom:145.056000px;}
.y18{bottom:145.131000px;}
.ydd{bottom:145.341000px;}
.y6b{bottom:145.396000px;}
.y22a{bottom:146.317000px;}
.y180{bottom:146.449000px;}
.y23{bottom:146.890000px;}
.y25f{bottom:147.095000px;}
.y19b{bottom:147.445000px;}
.yed{bottom:147.474000px;}
.y3{bottom:147.581000px;}
.y23a{bottom:147.896000px;}
.y168{bottom:147.948000px;}
.y18f{bottom:148.081000px;}
.y1f9{bottom:149.489000px;}
.y1eb{bottom:149.540000px;}
.y14d{bottom:149.879000px;}
.y39{bottom:149.971000px;}
.y9c{bottom:149.981000px;}
.y105{bottom:149.984000px;}
.y143{bottom:149.993000px;}
.y251{bottom:150.503000px;}
.y203{bottom:150.727000px;}
.y20f{bottom:151.060000px;}
.y89{bottom:151.637000px;}
.y1db{bottom:152.066000px;}
.y43{bottom:152.305000px;}
.y1b0{bottom:152.474000px;}
.y4c{bottom:152.973000px;}
.ybe{bottom:153.236000px;}
.y78{bottom:154.198000px;}
.y82{bottom:154.231000px;}
.yce{bottom:154.492000px;}
.y5b{bottom:154.950000px;}
.y173{bottom:154.975000px;}
.y1cc{bottom:155.055000px;}
.y1a4{bottom:155.229000px;}
.y156{bottom:155.434000px;}
.y13a{bottom:155.466000px;}
.yaf{bottom:155.715000px;}
.ydc{bottom:156.225000px;}
.y270{bottom:156.735000px;}
.y21b{bottom:156.939000px;}
.y229{bottom:157.202000px;}
.ya4{bottom:157.580000px;}
.y6a{bottom:157.999000px;}
.y17f{bottom:159.051000px;}
.y122{bottom:159.493000px;}
.yb{bottom:159.752000px;}
.y239{bottom:160.499000px;}
.y244{bottom:160.604000px;}
.y18e{bottom:160.683000px;}
.y266{bottom:161.387000px;}
.y167{bottom:161.811000px;}
.y1f8{bottom:162.092000px;}
.y1ea{bottom:162.143000px;}
.y88{bottom:162.272000px;}
.y9b{bottom:162.334000px;}
.y14c{bottom:162.482000px;}
.y19a{bottom:163.186000px;}
.yf9{bottom:163.662000px;}
.y268{bottom:164.081000px;}
.ybd{bottom:164.120000px;}
.y92{bottom:164.195000px;}
.y42{bottom:164.658000px;}
.y1da{bottom:164.668000px;}
.y15a{bottom:165.243000px;}
.y114{bottom:165.431000px;}
.y22{bottom:166.093000px;}
.y17{bottom:166.128000px;}
.y1c7{bottom:166.800000px;}
.ydb{bottom:167.109000px;}
.y1a3{bottom:167.582000px;}
.y1cb{bottom:167.657000px;}
.y139{bottom:168.069000px;}
.y104{bottom:168.539000px;}
.y214{bottom:168.929000px;}
.y38{bottom:169.537000px;}
.y81{bottom:169.813000px;}
.y1ba{bottom:170.012000px;}
.y2e{bottom:170.403000px;}
.y5a{bottom:170.531000px;}
.y172{bottom:170.556000px;}
.y130{bottom:170.663000px;}
.y17e{bottom:171.405000px;}
.y26f{bottom:171.891000px;}
.y121{bottom:172.096000px;}
.y250{bottom:172.271000px;}
.y10f{bottom:172.619000px;}
.y18d{bottom:173.037000px;}
.ycd{bottom:173.047000px;}
.y238{bottom:173.102000px;}
.ya3{bottom:173.162000px;}
.y53{bottom:173.935000px;}
.y1f7{bottom:174.695000px;}
.y1e9{bottom:174.746000px;}
.ybc{bottom:174.756000px;}
.y166{bottom:175.674000px;}
.yec{bottom:175.843000px;}
.y202{bottom:175.932000px;}
.y142{bottom:176.011000px;}
.yf8{bottom:176.265000px;}
.y91{bottom:176.798000px;}
.y1d9{bottom:177.022000px;}
.yda{bottom:177.744000px;}
.y4b{bottom:178.269000px;}
.y25e{bottom:178.453000px;}
.yae{bottom:178.877000px;}
.y199{bottom:178.927000px;}
.ya{bottom:178.955000px;}
.y228{bottom:178.970000px;}
.y113{bottom:179.179000px;}
.y41{bottom:179.254000px;}
.y77{bottom:179.403000px;}
.y267{bottom:179.662000px;}
.y1ca{bottom:180.011000px;}
.y138{bottom:180.422000px;}
.y159{bottom:180.825000px;}
.y24f{bottom:183.155000px;}
.y69{bottom:183.204000px;}
.y9a{bottom:183.380000px;}
.y120{bottom:184.698000px;}
.y37{bottom:185.119000px;}
.y21{bottom:185.296000px;}
.y2{bottom:185.484000px;}
.y237{bottom:185.704000px;}
.y2d{bottom:185.985000px;}
.y59{bottom:186.113000px;}
.y1a2{bottom:186.138000px;}
.y12f{bottom:186.244000px;}
.y80{bottom:186.635000px;}
.y1f6{bottom:187.048000px;}
.y1e8{bottom:187.099000px;}
.y16{bottom:187.124000px;}
.y14b{bottom:187.687000px;}
.y201{bottom:188.286000px;}
.yf7{bottom:188.618000px;}
.ycc{bottom:188.628000px;}
.y243{bottom:188.974000px;}
.y90{bottom:189.400000px;}
.ya2{bottom:189.525000px;}
.y165{bottom:189.537000px;}
.y227{bottom:189.854000px;}
.y1b9{bottom:190.200000px;}
.y103{bottom:191.094000px;}
.yeb{bottom:191.425000px;}
.ybb{bottom:191.592000px;}
.y1c6{bottom:191.756000px;}
.y76{bottom:192.006000px;}
.y4a{bottom:192.864000px;}
.y112{bottom:192.927000px;}
.y265{bottom:193.790000px;}
.y213{bottom:193.950000px;}
.y25d{bottom:194.035000px;}
.y24e{bottom:194.039000px;}
.yad{bottom:194.458000px;}
.yd9{bottom:194.581000px;}
.y40{bottom:194.835000px;}
.y1c9{bottom:195.577000px;}
.y68{bottom:195.807000px;}
.y158{bottom:196.406000px;}
.y11f{bottom:197.301000px;}
.y236{bottom:198.058000px;}
.y9{bottom:198.158000px;}
.y14a{bottom:200.290000px;}
.y226{bottom:200.738000px;}
.y8f{bottom:201.754000px;}
.y1e7{bottom:202.691000px;}
.y2c{bottom:202.807000px;}
.y12e{bottom:203.067000px;}
.y137{bottom:203.101000px;}
.y36{bottom:203.166000px;}
.y75{bottom:204.359000px;}
.y20{bottom:204.499000px;}
.y24d{bottom:204.674000px;}
.y242{bottom:205.796000px;}
.y1{bottom:206.107000px;}
.y58{bottom:206.676000px;}
.yba{bottom:207.174000px;}
.yea{bottom:207.788000px;}
.y15{bottom:208.120000px;}
.y67{bottom:208.160000px;}
.y164{bottom:209.033000px;}
.y11e{bottom:209.655000px;}
.yd8{bottom:210.163000px;}
.y25c{bottom:210.398000px;}
.y1c8{bottom:211.159000px;}
.y225{bottom:211.373000px;}
.y149{bottom:212.643000px;}
.yac{bottom:212.770000px;}
.y8{bottom:236.149000px;}
.y1c5{bottom:240.488000px;}
.hb{height:19.359269px;}
.h15{height:22.093117px;}
.hf{height:22.124998px;}
.ha{height:23.910300px;}
.hd{height:24.890726px;}
.h10{height:25.679770px;}
.he{height:26.899200px;}
.h9{height:27.616327px;}
.h6{height:29.887800px;}
.h12{height:31.243662px;}
.hc{height:32.727300px;}
.h14{height:33.091994px;}
.h5{height:33.187635px;}
.h11{height:34.072320px;}
.h7{height:35.865600px;}
.h4{height:40.456284px;}
.h8{height:43.038600px;}
.h13{height:57.276450px;}
.h3{height:58.268250px;}
.h2{height:74.361300px;}
.h0{height:255.118000px;}
.h1{height:255.500000px;}
.w0{width:453.543000px;}
.w1{width:454.000000px;}
.x0{left:0.000000px;}
.x29{left:4.710000px;}
.x5{left:10.667000px;}
.x15{left:12.140000px;}
.x32{left:14.226000px;}
.x1e{left:18.029000px;}
.x28{left:20.402000px;}
.x1f{left:25.454000px;}
.x1{left:28.346000px;}
.x31{left:29.559000px;}
.xd{left:31.983000px;}
.x6{left:34.488000px;}
.xe{left:36.225000px;}
.x30{left:39.256000px;}
.x13{left:42.468000px;}
.x18{left:45.283000px;}
.x11{left:47.176000px;}
.x7{left:50.486000px;}
.x22{left:53.153000px;}
.x2{left:57.697000px;}
.x10{left:58.911000px;}
.xf{left:62.892000px;}
.x24{left:66.005000px;}
.x2c{left:68.994000px;}
.x2b{left:70.712000px;}
.x3{left:72.328000px;}
.x26{left:76.784000px;}
.x19{left:79.156000px;}
.x2f{left:84.835000px;}
.x20{left:88.122000px;}
.x1d{left:101.165000px;}
.xc{left:106.772000px;}
.x1a{left:113.079000px;}
.x27{left:131.606000px;}
.x25{left:133.586000px;}
.x12{left:141.323000px;}
.x23{left:160.152000px;}
.x1b{left:163.838000px;}
.x21{left:183.689000px;}
.xb{left:186.076000px;}
.x2d{left:192.542000px;}
.x16{left:194.158000px;}
.x17{left:197.811000px;}
.xa{left:205.183000px;}
.x2a{left:214.295000px;}
.x1c{left:264.443000px;}
.x4{left:378.705000px;}
.x8{left:403.668000px;}
.x2e{left:418.767000px;}
.x14{left:424.403000px;}
.x9{left:428.637000px;}
@media print{
.v0{vertical-align:0.000000pt;}
.ls0{letter-spacing:0.000000pt;}
.ws0{word-spacing:0.000000pt;}
._35{margin-left:-10.869566pt;}
._d{margin-left:-6.910194pt;}
._5{margin-left:-5.126375pt;}
._3{margin-left:-2.424400pt;}
._b{width:1.487748pt;}
._0{width:4.098134pt;}
._f{width:5.760005pt;}
._14{width:8.320819pt;}
._29{width:11.437041pt;}
._11{width:14.001853pt;}
._10{width:15.412643pt;}
._a{width:17.693578pt;}
._e{width:19.320970pt;}
._7{width:21.488959pt;}
._12{width:23.021413pt;}
._8{width:24.572021pt;}
._c{width:27.162139pt;}
._6{width:28.921939pt;}
._23{width:31.515888pt;}
._43{width:32.993563pt;}
._22{width:34.581025pt;}
._21{width:36.267635pt;}
._2e{width:38.280857pt;}
._4{width:41.655600pt;}
._9{width:43.229883pt;}
._26{width:45.028811pt;}
._1{width:48.384419pt;}
._1e{width:50.211840pt;}
._2{width:54.549000pt;}
._30{width:57.682270pt;}
._40{width:64.119244pt;}
._2f{width:68.570936pt;}
._2a{width:75.317760pt;}
._32{width:90.582843pt;}
._1f{width:100.423680pt;}
._33{width:113.451717pt;}
._2d{width:125.529600pt;}
._3d{width:128.395062pt;}
._1a{width:141.816847pt;}
._36{width:150.635520pt;}
._4a{width:158.339320pt;}
._17{width:174.737203pt;}
._24{width:200.847360pt;}
._4f{width:204.309287pt;}
._42{width:225.953280pt;}
._3a{width:243.164461pt;}
._31{width:248.594261pt;}
._27{width:251.059200pt;}
._50{width:271.493486pt;}
._15{width:276.165120pt;}
._46{width:301.271040pt;}
._52{width:316.605781pt;}
._16{width:318.103962pt;}
._1d{width:341.536154pt;}
._51{width:361.566243pt;}
._19{width:366.689894pt;}
._2b{width:401.694720pt;}
._4b{width:429.699951pt;}
._1c{width:475.625795pt;}
._2c{width:477.012480pt;}
._18{width:520.318361pt;}
._3c{width:601.825763pt;}
._1b{width:615.893633pt;}
._37{width:627.203152pt;}
._38{width:648.905337pt;}
._3b{width:678.353386pt;}
._3e{width:715.538725pt;}
._3f{width:723.300156pt;}
._39{width:735.106997pt;}
._4c{width:835.521523pt;}
._28{width:853.601280pt;}
._44{width:979.130880pt;}
._13{width:1108.733852pt;}
._45{width:1148.627036pt;}
._41{width:1213.280758pt;}
._47{width:1229.858635pt;}
._54{width:1237.323661pt;}
._4e{width:1483.330107pt;}
._53{width:1526.441415pt;}
._49{width:1533.892645pt;}
._34{width:1566.644589pt;}
._25{width:1632.918729pt;}
._20{width:1795.660982pt;}
._4d{width:1825.798132pt;}
._48{width:1876.424431pt;}
.fs9{font-size:31.880533pt;}
.fs6{font-size:37.193600pt;}
.fs5{font-size:42.507200pt;}
.fs8{font-size:47.820800pt;}
.fs4{font-size:53.133867pt;}
.fs7{font-size:58.181867pt;}
.fs3{font-size:63.761067pt;}
.fs2{font-size:76.513067pt;}
.fs1{font-size:110.200000pt;}
.fs0{font-size:132.197867pt;}
.y1e6{bottom:-15.692000pt;}
.y0{bottom:-0.666667pt;}
.y1e5{bottom:1.112000pt;}
.y1d8{bottom:5.097333pt;}
.ye9{bottom:5.130667pt;}
.yb9{bottom:6.309333pt;}
.y18c{bottom:10.426667pt;}
.y200{bottom:10.476000pt;}
.y224{bottom:10.544000pt;}
.y12b{bottom:11.014667pt;}
.y198{bottom:12.602667pt;}
.y66{bottom:14.156000pt;}
.y17d{bottom:14.189333pt;}
.y155{bottom:15.000000pt;}
.ycb{bottom:15.657333pt;}
.y171{bottom:15.688000pt;}
.y20e{bottom:16.130667pt;}
.y102{bottom:16.573333pt;}
.y14{bottom:17.357333pt;}
.y1e4{bottom:17.916000pt;}
.y163{bottom:18.910667pt;}
.y27a{bottom:18.950667pt;}
.ye8{bottom:19.642667pt;}
.y235{bottom:20.944000pt;}
.yf6{bottom:20.992000pt;}
.yd7{bottom:21.481333pt;}
.y1d7{bottom:21.900000pt;}
.y1ad{bottom:22.133333pt;}
.yb8{bottom:23.113333pt;}
.y1f5{bottom:23.726667pt;}
.y1c4{bottom:25.373333pt;}
.y1e{bottom:25.538667pt;}
.y73{bottom:25.825333pt;}
.y11d{bottom:27.008000pt;}
.y189{bottom:27.229333pt;}
.y1ff{bottom:27.278667pt;}
.y26e{bottom:27.704000pt;}
.y12a{bottom:27.818667pt;}
.y2a{bottom:27.860000pt;}
.y12{bottom:28.630667pt;}
.y197{bottom:29.405333pt;}
.yca{bottom:30.169333pt;}
.y1f{bottom:30.358667pt;}
.y65{bottom:30.960000pt;}
.y17c{bottom:30.993333pt;}
.y154{bottom:31.804000pt;}
.y10e{bottom:32.274667pt;}
.y20d{bottom:32.933333pt;}
.y101{bottom:33.377333pt;}
.y279{bottom:33.462667pt;}
.ye7{bottom:34.154667pt;}
.y1e3{bottom:34.718667pt;}
.y24c{bottom:35.442667pt;}
.y234{bottom:35.456000pt;}
.y13{bottom:35.572000pt;}
.y1b8{bottom:35.596000pt;}
.y162{bottom:35.714667pt;}
.y35{bottom:36.377333pt;}
.y170{bottom:36.676000pt;}
.y1a1{bottom:36.748000pt;}
.yf5{bottom:37.794667pt;}
.y1d6{bottom:38.704000pt;}
.y223{bottom:38.705333pt;}
.y1ac{bottom:38.936000pt;}
.yb7{bottom:39.917333pt;}
.y1f4{bottom:40.530667pt;}
.y148{bottom:40.629333pt;}
.y136{bottom:41.266667pt;}
.y1c3{bottom:42.176000pt;}
.y72{bottom:42.629333pt;}
.y188{bottom:44.033333pt;}
.y129{bottom:44.621333pt;}
.yc9{bottom:44.681333pt;}
.y11c{bottom:45.338667pt;}
.y18b{bottom:45.545333pt;}
.y7{bottom:46.177333pt;}
.y196{bottom:46.209333pt;}
.y64{bottom:47.762667pt;}
.y17b{bottom:47.796000pt;}
.y278{bottom:47.974667pt;}
.ye6{bottom:48.666667pt;}
.y10d{bottom:49.078667pt;}
.y3f{bottom:49.438667pt;}
.y20c{bottom:49.737333pt;}
.y264{bottom:49.742667pt;}
.y233{bottom:49.968000pt;}
.y100{bottom:50.181333pt;}
.y1e2{bottom:51.522667pt;}
.y1b7{bottom:52.398667pt;}
.y99{bottom:52.465333pt;}
.y161{bottom:52.517333pt;}
.y29{bottom:53.464000pt;}
.y1d{bottom:53.533333pt;}
.y24b{bottom:53.774667pt;}
.y7f{bottom:54.365333pt;}
.yf4{bottom:54.598667pt;}
.yd6{bottom:55.089333pt;}
.y1d5{bottom:55.508000pt;}
.y25b{bottom:55.549333pt;}
.y141{bottom:56.056000pt;}
.yb6{bottom:56.720000pt;}
.y222{bottom:57.036000pt;}
.y34{bottom:57.153333pt;}
.y1f3{bottom:57.333333pt;}
.y1a0{bottom:57.734667pt;}
.y1c2{bottom:58.980000pt;}
.yc8{bottom:59.193333pt;}
.y11{bottom:59.378667pt;}
.y71{bottom:59.433333pt;}
.y187{bottom:60.836000pt;}
.y128{bottom:61.425333pt;}
.y26d{bottom:61.764000pt;}
.y135{bottom:62.042667pt;}
.y241{bottom:62.766667pt;}
.y1af{bottom:63.012000pt;}
.y49{bottom:63.092000pt;}
.ye5{bottom:63.178667pt;}
.y11b{bottom:63.669333pt;}
.y52{bottom:63.984000pt;}
.y232{bottom:64.480000pt;}
.y63{bottom:64.566667pt;}
.y17a{bottom:64.600000pt;}
.y153{bottom:65.410667pt;}
.y10c{bottom:65.881333pt;}
.y21a{bottom:66.116000pt;}
.y18a{bottom:66.320000pt;}
.y20b{bottom:66.541333pt;}
.y211{bottom:66.984000pt;}
.y16f{bottom:67.876000pt;}
.y6{bottom:68.410667pt;}
.y1b6{bottom:69.202667pt;}
.y25a{bottom:70.061333pt;}
.y7e{bottom:71.168000pt;}
.yf3{bottom:71.402667pt;}
.yd5{bottom:71.892000pt;}
.y24a{bottom:72.105333pt;}
.y1d4{bottom:72.310667pt;}
.y1ab{bottom:72.544000pt;}
.y140{bottom:72.860000pt;}
.ya9{bottom:73.588000pt;}
.yc7{bottom:73.705333pt;}
.y1f2{bottom:73.805333pt;}
.y1c1{bottom:75.784000pt;}
.y70{bottom:76.236000pt;}
.y221{bottom:76.662667pt;}
.y277{bottom:77.000000pt;}
.y87{bottom:77.441333pt;}
.y186{bottom:77.640000pt;}
.y127{bottom:78.229333pt;}
.y19f{bottom:78.722667pt;}
.y231{bottom:78.993333pt;}
.y28{bottom:79.068000pt;}
.y48{bottom:79.564000pt;}
.y240{bottom:79.570667pt;}
.y195{bottom:79.816000pt;}
.y147{bottom:80.001333pt;}
.y1fe{bottom:80.850667pt;}
.y263{bottom:81.145333pt;}
.y62{bottom:81.370667pt;}
.y179{bottom:81.404000pt;}
.y3e{bottom:81.472000pt;}
.y1c{bottom:81.528000pt;}
.y11a{bottom:82.001333pt;}
.y152{bottom:82.213333pt;}
.ya1{bottom:82.349333pt;}
.y10b{bottom:82.685333pt;}
.y20a{bottom:83.344000pt;}
.yff{bottom:83.788000pt;}
.y98{bottom:84.498667pt;}
.y259{bottom:84.573333pt;}
.y10{bottom:84.982667pt;}
.y1e1{bottom:85.129333pt;}
.y33{bottom:85.865333pt;}
.y160{bottom:86.125333pt;}
.y16e{bottom:86.360000pt;}
.y219{bottom:86.890667pt;}
.yab{bottom:87.972000pt;}
.yc6{bottom:88.217333pt;}
.y1d3{bottom:89.114667pt;}
.y1aa{bottom:89.346667pt;}
.y13f{bottom:89.664000pt;}
.y57{bottom:89.974667pt;}
.yb5{bottom:90.328000pt;}
.y276{bottom:91.512000pt;}
.ye4{bottom:92.202667pt;}
.y1c0{bottom:92.586667pt;}
.y230{bottom:93.505333pt;}
.y134{bottom:93.642667pt;}
.y249{bottom:94.388000pt;}
.y1f1{bottom:94.594667pt;}
.y12d{bottom:95.032000pt;}
.y26c{bottom:95.822667pt;}
.y23f{bottom:96.373333pt;}
.y194{bottom:96.620000pt;}
.y51{bottom:98.042667pt;}
.y61{bottom:98.173333pt;}
.y178{bottom:98.206667pt;}
.y86{bottom:98.217333pt;}
.y47{bottom:99.024000pt;}
.y258{bottom:99.085333pt;}
.ya0{bottom:99.153333pt;}
.y10a{bottom:99.489333pt;}
.y209{bottom:100.148000pt;}
.yfe{bottom:100.592000pt;}
.y146{bottom:100.776000pt;}
.y97{bottom:101.301333pt;}
.y1fd{bottom:101.625333pt;}
.y1e0{bottom:101.933333pt;}
.y3d{bottom:102.248000pt;}
.yc5{bottom:102.730667pt;}
.y119{bottom:102.776000pt;}
.y1b5{bottom:102.809333pt;}
.y15f{bottom:102.928000pt;}
.y27{bottom:104.672000pt;}
.y7d{bottom:104.776000pt;}
.y16d{bottom:104.844000pt;}
.yf2{bottom:105.009333pt;}
.y220{bottom:105.374667pt;}
.yd4{bottom:105.500000pt;}
.ya8{bottom:105.621333pt;}
.y1d2{bottom:105.918667pt;}
.y275{bottom:106.024000pt;}
.y1a9{bottom:106.150667pt;}
.y13e{bottom:106.466667pt;}
.y32{bottom:106.640000pt;}
.ye3{bottom:106.714667pt;}
.yb4{bottom:107.130667pt;}
.y22f{bottom:108.017333pt;}
.y1bf{bottom:109.390667pt;}
.y1b{bottom:109.522667pt;}
.y6f{bottom:109.844000pt;}
.yf{bottom:110.586667pt;}
.y185{bottom:111.246667pt;}
.y126{bottom:111.836000pt;}
.y262{bottom:112.546667pt;}
.y23e{bottom:113.177333pt;}
.y193{bottom:113.422667pt;}
.y257{bottom:113.597333pt;}
.y50{bottom:114.513333pt;}
.y60{bottom:114.977333pt;}
.y177{bottom:115.010667pt;}
.y8e{bottom:115.110667pt;}
.y1f0{bottom:115.369333pt;}
.y151{bottom:115.821333pt;}
.y109{bottom:116.292000pt;}
.y208{bottom:116.952000pt;}
.yc4{bottom:117.242667pt;}
.yfd{bottom:117.394667pt;}
.y19e{bottom:117.689333pt;}
.y96{bottom:118.105333pt;}
.y1df{bottom:118.737333pt;}
.y218{bottom:118.924000pt;}
.y1b4{bottom:119.613333pt;}
.y15e{bottom:119.732000pt;}
.y274{bottom:120.536000pt;}
.ye2{bottom:121.228000pt;}
.y7c{bottom:121.578667pt;}
.yf1{bottom:121.813333pt;}
.yd3{bottom:122.302667pt;}
.y22e{bottom:122.529333pt;}
.y1d1{bottom:122.721333pt;}
.y1a8{bottom:122.954667pt;}
.y13d{bottom:123.270667pt;}
.y16c{bottom:123.328000pt;}
.y56{bottom:123.581333pt;}
.yb3{bottom:123.934667pt;}
.y21f{bottom:126.150667pt;}
.y85{bottom:126.265333pt;}
.ya7{bottom:126.396000pt;}
.y74{bottom:126.646667pt;}
.y248{bottom:127.085333pt;}
.y133{bottom:127.701333pt;}
.y184{bottom:128.050667pt;}
.y256{bottom:128.109333pt;}
.y3c{bottom:128.336000pt;}
.y125{bottom:128.640000pt;}
.y8d{bottom:129.622667pt;}
.y26b{bottom:129.881333pt;}
.y23d{bottom:129.981333pt;}
.y192{bottom:130.226667pt;}
.y26{bottom:130.276000pt;}
.yc3{bottom:131.754667pt;}
.y5f{bottom:131.781333pt;}
.y1ef{bottom:132.173333pt;}
.y150{bottom:132.624000pt;}
.y9f{bottom:132.760000pt;}
.y1fc{bottom:133.028000pt;}
.y46{bottom:133.082667pt;}
.y207{bottom:133.754667pt;}
.y4f{bottom:133.974667pt;}
.y118{bottom:134.178667pt;}
.y210{bottom:134.198667pt;}
.y95{bottom:134.909333pt;}
.y273{bottom:135.048000pt;}
.y1de{bottom:135.540000pt;}
.ye1{bottom:135.740000pt;}
.ye{bottom:136.190667pt;}
.y1b3{bottom:136.417333pt;}
.y15d{bottom:136.536000pt;}
.y1a{bottom:137.518667pt;}
.y7b{bottom:138.382667pt;}
.y110{bottom:138.502667pt;}
.yf0{bottom:138.616000pt;}
.y19d{bottom:138.677333pt;}
.yd2{bottom:139.106667pt;}
.y1d0{bottom:139.525333pt;}
.y1a7{bottom:139.757333pt;}
.y13c{bottom:140.073333pt;}
.y31{bottom:140.698667pt;}
.yb2{bottom:140.738667pt;}
.y16b{bottom:141.812000pt;}
.y145{bottom:142.005333pt;}
.y255{bottom:142.621333pt;}
.y1be{bottom:142.997333pt;}
.y6e{bottom:143.450667pt;}
.y217{bottom:143.685333pt;}
.y261{bottom:143.949333pt;}
.y8c{bottom:144.134667pt;}
.y183{bottom:144.854667pt;}
.y5{bottom:144.942667pt;}
.y124{bottom:145.442667pt;}
.yc2{bottom:146.266667pt;}
.y21e{bottom:146.925333pt;}
.y191{bottom:147.030667pt;}
.y84{bottom:147.040000pt;}
.y247{bottom:147.861333pt;}
.y5e{bottom:148.584000pt;}
.y176{bottom:148.617333pt;}
.y1ee{bottom:148.976000pt;}
.y3b{bottom:149.112000pt;}
.y14f{bottom:149.428000pt;}
.y45{bottom:149.553333pt;}
.y108{bottom:149.900000pt;}
.ye0{bottom:150.252000pt;}
.y111{bottom:150.496000pt;}
.y206{bottom:150.558667pt;}
.yfc{bottom:151.002667pt;}
.ya6{bottom:151.157333pt;}
.y22d{bottom:151.553333pt;}
.y1dd{bottom:152.344000pt;}
.y117{bottom:152.509333pt;}
.y1b2{bottom:153.220000pt;}
.y1fb{bottom:153.802667pt;}
.yaa{bottom:155.186667pt;}
.yef{bottom:155.420000pt;}
.y24{bottom:155.880000pt;}
.yd1{bottom:155.910667pt;}
.y1cf{bottom:156.329333pt;}
.y1a6{bottom:156.561333pt;}
.y254{bottom:157.133333pt;}
.y55{bottom:157.188000pt;}
.y19c{bottom:159.665333pt;}
.y1bd{bottom:159.801333pt;}
.y6d{bottom:160.254667pt;}
.y16a{bottom:160.296000pt;}
.yc1{bottom:160.778667pt;}
.y157{bottom:161.417333pt;}
.y30{bottom:161.474667pt;}
.y182{bottom:161.657333pt;}
.y132{bottom:161.760000pt;}
.yd{bottom:161.794667pt;}
.y12c{bottom:162.246667pt;}
.y25{bottom:162.821333pt;}
.y23c{bottom:163.588000pt;}
.y272{bottom:163.740000pt;}
.y1ae{bottom:163.833333pt;}
.y26a{bottom:163.940000pt;}
.y144{bottom:164.637333pt;}
.y260{bottom:164.724000pt;}
.ydf{bottom:164.764000pt;}
.y5d{bottom:165.388000pt;}
.y175{bottom:165.421333pt;}
.y19{bottom:165.513333pt;}
.y1ed{bottom:165.780000pt;}
.y22c{bottom:166.065333pt;}
.y9e{bottom:166.368000pt;}
.y107{bottom:166.702667pt;}
.y205{bottom:167.362667pt;}
.y21d{bottom:167.701333pt;}
.yfb{bottom:167.805333pt;}
.y83{bottom:167.816000pt;}
.y4e{bottom:168.033333pt;}
.y216{bottom:168.445333pt;}
.y94{bottom:168.516000pt;}
.y246{bottom:168.636000pt;}
.y44{bottom:169.014667pt;}
.y3a{bottom:169.886667pt;}
.y1b1{bottom:170.024000pt;}
.y15c{bottom:170.142667pt;}
.y116{bottom:170.841333pt;}
.y253{bottom:171.645333pt;}
.yee{bottom:171.892000pt;}
.ya5{bottom:171.932000pt;}
.y7a{bottom:171.989333pt;}
.yd0{bottom:172.713333pt;}
.y1ce{bottom:173.132000pt;}
.y8b{bottom:173.158667pt;}
.y1a5{bottom:173.365333pt;}
.y212{bottom:173.410667pt;}
.y13b{bottom:173.681333pt;}
.yb1{bottom:174.345333pt;}
.yc0{bottom:175.290667pt;}
.y4{bottom:175.388000pt;}
.y1bc{bottom:176.604000pt;}
.y6c{bottom:177.057333pt;}
.y181{bottom:178.461333pt;}
.y169{bottom:178.780000pt;}
.y123{bottom:179.050667pt;}
.yde{bottom:179.276000pt;}
.y23b{bottom:180.392000pt;}
.y22b{bottom:180.577333pt;}
.y190{bottom:180.637333pt;}
.y5c{bottom:181.860000pt;}
.y174{bottom:181.892000pt;}
.y1fa{bottom:182.516000pt;}
.y1ec{bottom:182.584000pt;}
.y14e{bottom:183.034667pt;}
.y9d{bottom:183.170667pt;}
.y106{bottom:183.506667pt;}
.y204{bottom:184.165333pt;}
.y2b{bottom:184.330667pt;}
.y4d{bottom:184.504000pt;}
.yfa{bottom:184.609333pt;}
.y269{bottom:184.714667pt;}
.y93{bottom:185.320000pt;}
.y1dc{bottom:185.950667pt;}
.y252{bottom:186.158667pt;}
.y15b{bottom:186.614667pt;}
.yc{bottom:187.398667pt;}
.y8a{bottom:187.670667pt;}
.y21c{bottom:188.476000pt;}
.y271{bottom:188.773333pt;}
.y79{bottom:188.793333pt;}
.y115{bottom:189.172000pt;}
.y245{bottom:189.412000pt;}
.ycf{bottom:189.517333pt;}
.ybf{bottom:189.802667pt;}
.y1cd{bottom:189.936000pt;}
.y2f{bottom:190.186667pt;}
.y54{bottom:190.794667pt;}
.yb0{bottom:191.149333pt;}
.y215{bottom:193.205333pt;}
.y131{bottom:193.361333pt;}
.y1bb{bottom:193.408000pt;}
.y18{bottom:193.508000pt;}
.ydd{bottom:193.788000pt;}
.y6b{bottom:193.861333pt;}
.y22a{bottom:195.089333pt;}
.y180{bottom:195.265333pt;}
.y23{bottom:195.853333pt;}
.y25f{bottom:196.126667pt;}
.y19b{bottom:196.593333pt;}
.yed{bottom:196.632000pt;}
.y3{bottom:196.774667pt;}
.y23a{bottom:197.194667pt;}
.y168{bottom:197.264000pt;}
.y18f{bottom:197.441333pt;}
.y1f9{bottom:199.318667pt;}
.y1eb{bottom:199.386667pt;}
.y14d{bottom:199.838667pt;}
.y39{bottom:199.961333pt;}
.y9c{bottom:199.974667pt;}
.y105{bottom:199.978667pt;}
.y143{bottom:199.990667pt;}
.y251{bottom:200.670667pt;}
.y203{bottom:200.969333pt;}
.y20f{bottom:201.413333pt;}
.y89{bottom:202.182667pt;}
.y1db{bottom:202.754667pt;}
.y43{bottom:203.073333pt;}
.y1b0{bottom:203.298667pt;}
.y4c{bottom:203.964000pt;}
.ybe{bottom:204.314667pt;}
.y78{bottom:205.597333pt;}
.y82{bottom:205.641333pt;}
.yce{bottom:205.989333pt;}
.y5b{bottom:206.600000pt;}
.y173{bottom:206.633333pt;}
.y1cc{bottom:206.740000pt;}
.y1a4{bottom:206.972000pt;}
.y156{bottom:207.245333pt;}
.y13a{bottom:207.288000pt;}
.yaf{bottom:207.620000pt;}
.ydc{bottom:208.300000pt;}
.y270{bottom:208.980000pt;}
.y21b{bottom:209.252000pt;}
.y229{bottom:209.602667pt;}
.ya4{bottom:210.106667pt;}
.y6a{bottom:210.665333pt;}
.y17f{bottom:212.068000pt;}
.y122{bottom:212.657333pt;}
.yb{bottom:213.002667pt;}
.y239{bottom:213.998667pt;}
.y244{bottom:214.138667pt;}
.y18e{bottom:214.244000pt;}
.y266{bottom:215.182667pt;}
.y167{bottom:215.748000pt;}
.y1f8{bottom:216.122667pt;}
.y1ea{bottom:216.190667pt;}
.y88{bottom:216.362667pt;}
.y9b{bottom:216.445333pt;}
.y14c{bottom:216.642667pt;}
.y19a{bottom:217.581333pt;}
.yf9{bottom:218.216000pt;}
.y268{bottom:218.774667pt;}
.ybd{bottom:218.826667pt;}
.y92{bottom:218.926667pt;}
.y42{bottom:219.544000pt;}
.y1da{bottom:219.557333pt;}
.y15a{bottom:220.324000pt;}
.y114{bottom:220.574667pt;}
.y22{bottom:221.457333pt;}
.y17{bottom:221.504000pt;}
.y1c7{bottom:222.400000pt;}
.ydb{bottom:222.812000pt;}
.y1a3{bottom:223.442667pt;}
.y1cb{bottom:223.542667pt;}
.y139{bottom:224.092000pt;}
.y104{bottom:224.718667pt;}
.y214{bottom:225.238667pt;}
.y38{bottom:226.049333pt;}
.y81{bottom:226.417333pt;}
.y1ba{bottom:226.682667pt;}
.y2e{bottom:227.204000pt;}
.y5a{bottom:227.374667pt;}
.y172{bottom:227.408000pt;}
.y130{bottom:227.550667pt;}
.y17e{bottom:228.540000pt;}
.y26f{bottom:229.188000pt;}
.y121{bottom:229.461333pt;}
.y250{bottom:229.694667pt;}
.y10f{bottom:230.158667pt;}
.y18d{bottom:230.716000pt;}
.ycd{bottom:230.729333pt;}
.y238{bottom:230.802667pt;}
.ya3{bottom:230.882667pt;}
.y53{bottom:231.913333pt;}
.y1f7{bottom:232.926667pt;}
.y1e9{bottom:232.994667pt;}
.ybc{bottom:233.008000pt;}
.y166{bottom:234.232000pt;}
.yec{bottom:234.457333pt;}
.y202{bottom:234.576000pt;}
.y142{bottom:234.681333pt;}
.yf8{bottom:235.020000pt;}
.y91{bottom:235.730667pt;}
.y1d9{bottom:236.029333pt;}
.yda{bottom:236.992000pt;}
.y4b{bottom:237.692000pt;}
.y25e{bottom:237.937333pt;}
.yae{bottom:238.502667pt;}
.y199{bottom:238.569333pt;}
.ya{bottom:238.606667pt;}
.y228{bottom:238.626667pt;}
.y113{bottom:238.905333pt;}
.y41{bottom:239.005333pt;}
.y77{bottom:239.204000pt;}
.y267{bottom:239.549333pt;}
.y1ca{bottom:240.014667pt;}
.y138{bottom:240.562667pt;}
.y159{bottom:241.100000pt;}
.y24f{bottom:244.206667pt;}
.y69{bottom:244.272000pt;}
.y9a{bottom:244.506667pt;}
.y120{bottom:246.264000pt;}
.y37{bottom:246.825333pt;}
.y21{bottom:247.061333pt;}
.y2{bottom:247.312000pt;}
.y237{bottom:247.605333pt;}
.y2d{bottom:247.980000pt;}
.y59{bottom:248.150667pt;}
.y1a2{bottom:248.184000pt;}
.y12f{bottom:248.325333pt;}
.y80{bottom:248.846667pt;}
.y1f6{bottom:249.397333pt;}
.y1e8{bottom:249.465333pt;}
.y16{bottom:249.498667pt;}
.y14b{bottom:250.249333pt;}
.y201{bottom:251.048000pt;}
.yf7{bottom:251.490667pt;}
.ycc{bottom:251.504000pt;}
.y243{bottom:251.965333pt;}
.y90{bottom:252.533333pt;}
.ya2{bottom:252.700000pt;}
.y165{bottom:252.716000pt;}
.y227{bottom:253.138667pt;}
.y1b9{bottom:253.600000pt;}
.y103{bottom:254.792000pt;}
.yeb{bottom:255.233333pt;}
.ybb{bottom:255.456000pt;}
.y1c6{bottom:255.674667pt;}
.y76{bottom:256.008000pt;}
.y4a{bottom:257.152000pt;}
.y112{bottom:257.236000pt;}
.y265{bottom:258.386667pt;}
.y213{bottom:258.600000pt;}
.y25d{bottom:258.713333pt;}
.y24e{bottom:258.718667pt;}
.yad{bottom:259.277333pt;}
.yd9{bottom:259.441333pt;}
.y40{bottom:259.780000pt;}
.y1c9{bottom:260.769333pt;}
.y68{bottom:261.076000pt;}
.y158{bottom:261.874667pt;}
.y11f{bottom:263.068000pt;}
.y236{bottom:264.077333pt;}
.y9{bottom:264.210667pt;}
.y14a{bottom:267.053333pt;}
.y226{bottom:267.650667pt;}
.y8f{bottom:269.005333pt;}
.y1e7{bottom:270.254667pt;}
.y2c{bottom:270.409333pt;}
.y12e{bottom:270.756000pt;}
.y137{bottom:270.801333pt;}
.y36{bottom:270.888000pt;}
.y75{bottom:272.478667pt;}
.y20{bottom:272.665333pt;}
.y24d{bottom:272.898667pt;}
.y242{bottom:274.394667pt;}
.y1{bottom:274.809333pt;}
.y58{bottom:275.568000pt;}
.yba{bottom:276.232000pt;}
.yea{bottom:277.050667pt;}
.y15{bottom:277.493333pt;}
.y67{bottom:277.546667pt;}
.y164{bottom:278.710667pt;}
.y11e{bottom:279.540000pt;}
.yd8{bottom:280.217333pt;}
.y25c{bottom:280.530667pt;}
.y1c8{bottom:281.545333pt;}
.y225{bottom:281.830667pt;}
.y149{bottom:283.524000pt;}
.yac{bottom:283.693333pt;}
.y8{bottom:314.865333pt;}
.y1c5{bottom:320.650667pt;}
.hb{height:25.812358pt;}
.h15{height:29.457490pt;}
.hf{height:29.499997pt;}
.ha{height:31.880400pt;}
.hd{height:33.187635pt;}
.h10{height:34.239693pt;}
.he{height:35.865600pt;}
.h9{height:36.821770pt;}
.h6{height:39.850400pt;}
.h12{height:41.658217pt;}
.hc{height:43.636400pt;}
.h14{height:44.122658pt;}
.h5{height:44.250180pt;}
.h11{height:45.429760pt;}
.h7{height:47.820800pt;}
.h4{height:53.941712pt;}
.h8{height:57.384800pt;}
.h13{height:76.368600pt;}
.h3{height:77.691000pt;}
.h2{height:99.148400pt;}
.h0{height:340.157333pt;}
.h1{height:340.666667pt;}
.w0{width:604.724000pt;}
.w1{width:605.333333pt;}
.x0{left:0.000000pt;}
.x29{left:6.280000pt;}
.x5{left:14.222667pt;}
.x15{left:16.186667pt;}
.x32{left:18.968000pt;}
.x1e{left:24.038667pt;}
.x28{left:27.202667pt;}
.x1f{left:33.938667pt;}
.x1{left:37.794667pt;}
.x31{left:39.412000pt;}
.xd{left:42.644000pt;}
.x6{left:45.984000pt;}
.xe{left:48.300000pt;}
.x30{left:52.341333pt;}
.x13{left:56.624000pt;}
.x18{left:60.377333pt;}
.x11{left:62.901333pt;}
.x7{left:67.314667pt;}
.x22{left:70.870667pt;}
.x2{left:76.929333pt;}
.x10{left:78.548000pt;}
.xf{left:83.856000pt;}
.x24{left:88.006667pt;}
.x2c{left:91.992000pt;}
.x2b{left:94.282667pt;}
.x3{left:96.437333pt;}
.x26{left:102.378667pt;}
.x19{left:105.541333pt;}
.x2f{left:113.113333pt;}
.x20{left:117.496000pt;}
.x1d{left:134.886667pt;}
.xc{left:142.362667pt;}
.x1a{left:150.772000pt;}
.x27{left:175.474667pt;}
.x25{left:178.114667pt;}
.x12{left:188.430667pt;}
.x23{left:213.536000pt;}
.x1b{left:218.450667pt;}
.x21{left:244.918667pt;}
.xb{left:248.101333pt;}
.x2d{left:256.722667pt;}
.x16{left:258.877333pt;}
.x17{left:263.748000pt;}
.xa{left:273.577333pt;}
.x2a{left:285.726667pt;}
.x1c{left:352.590667pt;}
.x4{left:504.940000pt;}
.x8{left:538.224000pt;}
.x2e{left:558.356000pt;}
.x14{left:565.870667pt;}
.x9{left:571.516000pt;}
}
</style>
<script>
/*
Copyright 2012 Mozilla Foundation
Copyright 2013 Lu Wang <coolwanglu@gmail.com>
Apachine License Version 2.0
*/
(function(){function b(a,b,e,f){var c=(a.className||"").split(/\s+/g);""===c[0]&&c.shift();var d=c.indexOf(b);0>d&&e&&c.push(b);0<=d&&f&&c.splice(d,1);a.className=c.join(" ");return 0<=d}if(!("classList"in document.createElement("div"))){var e={add:function(a){b(this.element,a,!0,!1)},contains:function(a){return b(this.element,a,!1,!1)},remove:function(a){b(this.element,a,!1,!0)},toggle:function(a){b(this.element,a,!0,!0)}};Object.defineProperty(HTMLElement.prototype,"classList",{get:function(){if(this._classList)return this._classList;
var a=Object.create(e,{element:{value:this,writable:!1,enumerable:!0}});Object.defineProperty(this,"_classList",{value:a,writable:!1,enumerable:!1});return a},enumerable:!0})}})();
</script>
<script>
(function(){/*
pdf2htmlEX.js: Core UI functions for pdf2htmlEX
Copyright 2012,2013 Lu Wang <coolwanglu@gmail.com> and other contributors
https://github.com/pdf2htmlEX/pdf2htmlEX/blob/master/share/LICENSE
*/
var pdf2htmlEX=window.pdf2htmlEX=window.pdf2htmlEX||{},CSS_CLASS_NAMES={page_frame:"pf",page_content_box:"pc",page_data:"pi",background_image:"bi",link:"l",input_radio:"ir",__dummy__:"no comma"},DEFAULT_CONFIG={container_id:"page-container",sidebar_id:"sidebar",outline_id:"outline",loading_indicator_cls:"loading-indicator",preload_pages:3,render_timeout:100,scale_step:0.9,key_handler:!0,hashchange_handler:!0,view_history_handler:!0,__dummy__:"no comma"},EPS=1E-6;
function invert(a){var b=a[0]*a[3]-a[1]*a[2];return[a[3]/b,-a[1]/b,-a[2]/b,a[0]/b,(a[2]*a[5]-a[3]*a[4])/b,(a[1]*a[4]-a[0]*a[5])/b]}function transform(a,b){return[a[0]*b[0]+a[2]*b[1]+a[4],a[1]*b[0]+a[3]*b[1]+a[5]]}function get_page_number(a){return parseInt(a.getAttribute("data-page-no"),16)}function disable_dragstart(a){for(var b=0,c=a.length;b<c;++b)a[b].addEventListener("dragstart",function(){return!1},!1)}
function clone_and_extend_objs(a){for(var b={},c=0,e=arguments.length;c<e;++c){var h=arguments[c],d;for(d in h)h.hasOwnProperty(d)&&(b[d]=h[d])}return b}
function Page(a){if(a){this.shown=this.loaded=!1;this.page=a;this.num=get_page_number(a);this.original_height=a.clientHeight;this.original_width=a.clientWidth;var b=a.getElementsByClassName(CSS_CLASS_NAMES.page_content_box)[0];b&&(this.content_box=b,this.original_scale=this.cur_scale=this.original_height/b.clientHeight,this.page_data=JSON.parse(a.getElementsByClassName(CSS_CLASS_NAMES.page_data)[0].getAttribute("data-data")),this.ctm=this.page_data.ctm,this.ictm=invert(this.ctm),this.loaded=!0)}}
Page.prototype={hide:function(){this.loaded&&this.shown&&(this.content_box.classList.remove("opened"),this.shown=!1)},show:function(){this.loaded&&!this.shown&&(this.content_box.classList.add("opened"),this.shown=!0)},rescale:function(a){this.cur_scale=0===a?this.original_scale:a;this.loaded&&(a=this.content_box.style,a.msTransform=a.webkitTransform=a.transform="scale("+this.cur_scale.toFixed(3)+")");a=this.page.style;a.height=this.original_height*this.cur_scale+"px";a.width=this.original_width*this.cur_scale+
"px"},view_position:function(){var a=this.page,b=a.parentNode;return[b.scrollLeft-a.offsetLeft-a.clientLeft,b.scrollTop-a.offsetTop-a.clientTop]},height:function(){return this.page.clientHeight},width:function(){return this.page.clientWidth}};function Viewer(a){this.config=clone_and_extend_objs(DEFAULT_CONFIG,0<arguments.length?a:{});this.pages_loading=[];this.init_before_loading_content();var b=this;document.addEventListener("DOMContentLoaded",function(){b.init_after_loading_content()},!1)}
Viewer.prototype={scale:1,cur_page_idx:0,first_page_idx:0,init_before_loading_content:function(){this.pre_hide_pages()},initialize_radio_button:function(){for(var a=document.getElementsByClassName(CSS_CLASS_NAMES.input_radio),b=0;b<a.length;b++)a[b].addEventListener("click",function(){this.classList.toggle("checked")})},init_after_loading_content:function(){this.sidebar=document.getElementById(this.config.sidebar_id);this.outline=document.getElementById(this.config.outline_id);this.container=document.getElementById(this.config.container_id);
this.loading_indicator=document.getElementsByClassName(this.config.loading_indicator_cls)[0];for(var a=!0,b=this.outline.childNodes,c=0,e=b.length;c<e;++c)if("ul"===b[c].nodeName.toLowerCase()){a=!1;break}a||this.sidebar.classList.add("opened");this.find_pages();if(0!=this.pages.length){disable_dragstart(document.getElementsByClassName(CSS_CLASS_NAMES.background_image));this.config.key_handler&&this.register_key_handler();var h=this;this.config.hashchange_handler&&window.addEventListener("hashchange",
function(a){h.navigate_to_dest(document.location.hash.substring(1))},!1);this.config.view_history_handler&&window.addEventListener("popstate",function(a){a.state&&h.navigate_to_dest(a.state)},!1);this.container.addEventListener("scroll",function(){h.update_page_idx();h.schedule_render(!0)},!1);[this.container,this.outline].forEach(function(a){a.addEventListener("click",h.link_handler.bind(h),!1)});this.initialize_radio_button();this.render()}},find_pages:function(){for(var a=[],b={},c=this.container.childNodes,
e=0,h=c.length;e<h;++e){var d=c[e];d.nodeType===Node.ELEMENT_NODE&&d.classList.contains(CSS_CLASS_NAMES.page_frame)&&(d=new Page(d),a.push(d),b[d.num]=a.length-1)}this.pages=a;this.page_map=b},load_page:function(a,b,c){var e=this.pages;if(!(a>=e.length||(e=e[a],e.loaded||this.pages_loading[a]))){var e=e.page,h=e.getAttribute("data-page-url");if(h){this.pages_loading[a]=!0;var d=e.getElementsByClassName(this.config.loading_indicator_cls)[0];"undefined"===typeof d&&(d=this.loading_indicator.cloneNode(!0),
d.classList.add("active"),e.appendChild(d));var f=this,g=new XMLHttpRequest;g.open("GET",h,!0);g.onload=function(){if(200===g.status||0===g.status){var b=document.createElement("div");b.innerHTML=g.responseText;for(var d=null,b=b.childNodes,e=0,h=b.length;e<h;++e){var p=b[e];if(p.nodeType===Node.ELEMENT_NODE&&p.classList.contains(CSS_CLASS_NAMES.page_frame)){d=p;break}}b=f.pages[a];f.container.replaceChild(d,b.page);b=new Page(d);f.pages[a]=b;b.hide();b.rescale(f.scale);disable_dragstart(d.getElementsByClassName(CSS_CLASS_NAMES.background_image));
f.schedule_render(!1);c&&c(b)}delete f.pages_loading[a]};g.send(null)}void 0===b&&(b=this.config.preload_pages);0<--b&&(f=this,setTimeout(function(){f.load_page(a+1,b)},0))}},pre_hide_pages:function(){var a="@media screen{."+CSS_CLASS_NAMES.page_content_box+"{display:none;}}",b=document.createElement("style");b.styleSheet?b.styleSheet.cssText=a:b.appendChild(document.createTextNode(a));document.head.appendChild(b)},render:function(){for(var a=this.container,b=a.scrollTop,c=a.clientHeight,a=b-c,b=
b+c+c,c=this.pages,e=0,h=c.length;e<h;++e){var d=c[e],f=d.page,g=f.offsetTop+f.clientTop,f=g+f.clientHeight;g<=b&&f>=a?d.loaded?d.show():this.load_page(e):d.hide()}},update_page_idx:function(){var a=this.pages,b=a.length;if(!(2>b)){for(var c=this.container,e=c.scrollTop,c=e+c.clientHeight,h=-1,d=b,f=d-h;1<f;){var g=h+Math.floor(f/2),f=a[g].page;f.offsetTop+f.clientTop+f.clientHeight>=e?d=g:h=g;f=d-h}this.first_page_idx=d;for(var g=h=this.cur_page_idx,k=0;d<b;++d){var f=a[d].page,l=f.offsetTop+f.clientTop,
f=f.clientHeight;if(l>c)break;f=(Math.min(c,l+f)-Math.max(e,l))/f;if(d===h&&Math.abs(f-1)<=EPS){g=h;break}f>k&&(k=f,g=d)}this.cur_page_idx=g}},schedule_render:function(a){if(void 0!==this.render_timer){if(!a)return;clearTimeout(this.render_timer)}var b=this;this.render_timer=setTimeout(function(){delete b.render_timer;b.render()},this.config.render_timeout)},register_key_handler:function(){var a=this;window.addEventListener("DOMMouseScroll",function(b){if(b.ctrlKey){b.preventDefault();var c=a.container,
e=c.getBoundingClientRect(),c=[b.clientX-e.left-c.clientLeft,b.clientY-e.top-c.clientTop];a.rescale(Math.pow(a.config.scale_step,b.detail),!0,c)}},!1);window.addEventListener("keydown",function(b){var c=!1,e=b.ctrlKey||b.metaKey,h=b.altKey;switch(b.keyCode){case 61:case 107:case 187:e&&(a.rescale(1/a.config.scale_step,!0),c=!0);break;case 173:case 109:case 189:e&&(a.rescale(a.config.scale_step,!0),c=!0);break;case 48:e&&(a.rescale(0,!1),c=!0);break;case 33:h?a.scroll_to(a.cur_page_idx-1):a.container.scrollTop-=
a.container.clientHeight;c=!0;break;case 34:h?a.scroll_to(a.cur_page_idx+1):a.container.scrollTop+=a.container.clientHeight;c=!0;break;case 35:a.container.scrollTop=a.container.scrollHeight;c=!0;break;case 36:a.container.scrollTop=0,c=!0}c&&b.preventDefault()},!1)},rescale:function(a,b,c){var e=this.scale;this.scale=a=0===a?1:b?e*a:a;c||(c=[0,0]);b=this.container;c[0]+=b.scrollLeft;c[1]+=b.scrollTop;for(var h=this.pages,d=h.length,f=this.first_page_idx;f<d;++f){var g=h[f].page;if(g.offsetTop+g.clientTop>=
c[1])break}g=f-1;0>g&&(g=0);var g=h[g].page,k=g.clientWidth,f=g.clientHeight,l=g.offsetLeft+g.clientLeft,m=c[0]-l;0>m?m=0:m>k&&(m=k);k=g.offsetTop+g.clientTop;c=c[1]-k;0>c?c=0:c>f&&(c=f);for(f=0;f<d;++f)h[f].rescale(a);b.scrollLeft+=m/e*a+g.offsetLeft+g.clientLeft-m-l;b.scrollTop+=c/e*a+g.offsetTop+g.clientTop-c-k;this.schedule_render(!0)},fit_width:function(){var a=this.cur_page_idx;this.rescale(this.container.clientWidth/this.pages[a].width(),!0);this.scroll_to(a)},fit_height:function(){var a=this.cur_page_idx;
this.rescale(this.container.clientHeight/this.pages[a].height(),!0);this.scroll_to(a)},get_containing_page:function(a){for(;a;){if(a.nodeType===Node.ELEMENT_NODE&&a.classList.contains(CSS_CLASS_NAMES.page_frame)){a=get_page_number(a);var b=this.page_map;return a in b?this.pages[b[a]]:null}a=a.parentNode}return null},link_handler:function(a){var b=a.target,c=b.getAttribute("data-dest-detail");if(c){if(this.config.view_history_handler)try{var e=this.get_current_view_hash();window.history.replaceState(e,
"","#"+e);window.history.pushState(c,"","#"+c)}catch(h){}this.navigate_to_dest(c,this.get_containing_page(b));a.preventDefault()}},navigate_to_dest:function(a,b){try{var c=JSON.parse(a)}catch(e){return}if(c instanceof Array){var h=c[0],d=this.page_map;if(h in d){for(var f=d[h],h=this.pages[f],d=2,g=c.length;d<g;++d){var k=c[d];if(null!==k&&"number"!==typeof k)return}for(;6>c.length;)c.push(null);var g=b||this.pages[this.cur_page_idx],d=g.view_position(),d=transform(g.ictm,[d[0],g.height()-d[1]]),
g=this.scale,l=[0,0],m=!0,k=!1,n=this.scale;switch(c[1]){case "XYZ":l=[null===c[2]?d[0]:c[2]*n,null===c[3]?d[1]:c[3]*n];g=c[4];if(null===g||0===g)g=this.scale;k=!0;break;case "Fit":case "FitB":l=[0,0];k=!0;break;case "FitH":case "FitBH":l=[0,null===c[2]?d[1]:c[2]*n];k=!0;break;case "FitV":case "FitBV":l=[null===c[2]?d[0]:c[2]*n,0];k=!0;break;case "FitR":l=[c[2]*n,c[5]*n],m=!1,k=!0}if(k){this.rescale(g,!1);var p=this,c=function(a){l=transform(a.ctm,l);m&&(l[1]=a.height()-l[1]);p.scroll_to(f,l)};h.loaded?
c(h):(this.load_page(f,void 0,c),this.scroll_to(f))}}}},scroll_to:function(a,b){var c=this.pages;if(!(0>a||a>=c.length)){c=c[a].view_position();void 0===b&&(b=[0,0]);var e=this.container;e.scrollLeft+=b[0]-c[0];e.scrollTop+=b[1]-c[1]}},get_current_view_hash:function(){var a=[],b=this.pages[this.cur_page_idx];a.push(b.num);a.push("XYZ");var c=b.view_position(),c=transform(b.ictm,[c[0],b.height()-c[1]]);a.push(c[0]/this.scale);a.push(c[1]/this.scale);a.push(this.scale);return JSON.stringify(a)}};
pdf2htmlEX.Viewer=Viewer;})();
</script>
<script>
try{
pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});
}catch(e){}
</script>
<title></title>
</head>
<body>
<div id="sidebar">
<div id="outline">
<ul><li><a class="l" href="#pf5" data-dest-detail='[5,"XYZ",28.346,255.118,null]'>Polymorphism</a><ul><li><a class="l" href="#pf9" data-dest-detail='[9,"XYZ",28.346,216.889,null]'>C++ Mechanisms for Polymorphism</a></li><li><a class="l" href="#pfc" data-dest-detail='[12,"XYZ",28.346,228.21,null]'>virtual Methods</a></li><li><a class="l" href="#pff" data-dest-detail='[15,"XYZ",28.346,204.068,null]'>Virtual Table</a></li><li><a class="l" href="#pf13" data-dest-detail='[19,"XYZ",28.346,206.958,null]'>override Keyword</a></li><li><a class="l" href="#pf15" data-dest-detail='[21,"XYZ",28.346,228.21,null]'>final Keyword</a></li><li><a class="l" href="#pf16" data-dest-detail='[22,"XYZ",28.346,228.21,null]'>Common Errors</a></li><li><a class="l" href="#pf19" data-dest-detail='[25,"XYZ",28.346,228.21,null]'>Pure Virtual Method</a></li><li><a class="l" href="#pf1b" data-dest-detail='[27,"XYZ",28.346,228.21,null]'>Abstract Class and Interface</a></li></ul></li><li><a class="l" href="#pf1c" data-dest-detail='[28,"XYZ",28.346,255.118,null]'>Inheritance Casting and Run-time Type Identification </a></li><li><a class="l" href="#pf26" data-dest-detail='[38,"XYZ",28.346,255.118,null]'>Operator Overloading</a><ul><li><a class="l" href="#pf27" data-dest-detail='[39,"XYZ",28.346,228.21,null]'>Overview</a></li><li><a class="l" href="#pf29" data-dest-detail='[41,"XYZ",28.346,228.21,null]'>Comparison Operator operator&lt;</a></li><li><a class="l" href="#pf2a" data-dest-detail='[42,"XYZ",28.346,228.21,null]'>Spaceship Operator operator&lt;=&gt;</a></li><li><a class="l" href="#pf2e" data-dest-detail='[46,"XYZ",28.346,228.21,null]'>Subscript Operator operator[]</a></li><li><a class="l" href="#pf2f" data-dest-detail='[47,"XYZ",28.346,228.21,null]'>Multidimensional Subscript Operator operator[]</a></li><li><a class="l" href="#pf30" data-dest-detail='[48,"XYZ",28.346,228.21,null]'>Function Call Operator operator()</a></li><li><a class="l" href="#pf31" data-dest-detail='[49,"XYZ",28.346,228.21,null]'>static operator() and static operator[]</a></li><li><a class="l" href="#pf32" data-dest-detail='[50,"XYZ",28.346,228.21,null]'>Conversion Operator operator T()</a></li><li><a class="l" href="#pf34" data-dest-detail='[52,"XYZ",28.346,212.803,null]'>Return Type Overloading Resolution </a></li></ul></li><li><a class="l" href="#pf35" data-dest-detail='[53,"XYZ",28.346,255.118,null]'>tmp</a><ul><li><a class="l" href="#pf35" data-dest-detail='[53,"XYZ",28.346,228.21,null]'>Increment and Decrement Operators operator++/</a></li><li><a class="l" href="#pf36" data-dest-detail='[54,"XYZ",28.346,228.21,null]'>Assignment Operator operator type=</a></li><li><a class="l" href="#pf39" data-dest-detail='[57,"XYZ",28.346,228.21,null]'>Stream Operator operator&lt;&lt;</a></li><li><a class="l" href="#pf3a" data-dest-detail='[58,"XYZ",28.346,228.21,null]'>Operator Notes</a></li></ul></li><li><a class="l" href="#pf3c" data-dest-detail='[60,"XYZ",28.346,255.118,null]'>C++ Object Layout </a><ul><li><a class="l" href="#pf3e" data-dest-detail='[62,"XYZ",28.346,228.21,null]'>Aggregate</a></li><li><a class="l" href="#pf41" data-dest-detail='[65,"XYZ",28.346,228.21,null]'>Trivial Class</a></li><li><a class="l" href="#pf44" data-dest-detail='[68,"XYZ",28.346,213.118,null]'>Standard-Layout Class</a></li><li><a class="l" href="#pf45" data-dest-detail='[69,"XYZ",28.346,228.21,null]'>Plain Old Data (POD)</a></li><li><a class="l" href="#pf47" data-dest-detail='[71,"XYZ",28.346,226.36,null]'>Hierarchy</a></li></ul></li></ul></div>
</div>
<div id="page-container">
<div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0">Mo<span class="_ _0"></span>dern<span class="_ _1"> </span>C++</div><div class="t m0 x1 h2 y2 ff1 fs0 fc0 sc0 ls0 ws0">Programming</div><div class="t m0 x1 h3 y3 ff2 fs1 fc0 sc0 ls0 ws0">10.<span class="_ _2"> </span>Object-Oriented</div><div class="t m0 x2 h3 y4 ff2 fs1 fc0 sc0 ls0 ws0">Pr<span class="_ _3"></span>ogramming<span class="_ _4"> </span>I<span class="_ _0"></span>I</div><div class="t m0 x3 h4 y5 ff2 fs2 fc0 sc0 ls0 ws0">Pol<span class="_ _5"></span>ymorphism<span class="_ _6"> </span>and<span class="_ _6"> </span>Opera<span class="_ _5"></span>tor<span class="_ _6"> </span>O<span class="_ _3"></span>verlo<span class="_ _3"></span>ading</div><div class="t m0 x1 h5 y6 ff3 fs3 fc0 sc0 ls0 ws0">F<span class="_ _3"></span>ederico<span class="_ _7"> </span>Busato</div><div class="t m0 x4 h6 y7 ff4 fs4 fc0 sc0 ls0 ws0">2026-01-06</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2" class="pf w0 h0" data-page-no="2"><div class="pc pc2 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _5"></span>able<span class="_ _7"> </span>of<span class="_ _8"> </span>Contents</div><div class="t m0 x6 h8 y9 ff1 fs4 fc2 sc0 ls0 ws0">1<span class="_ _9"> </span><span class="fs2 fc0">P<span class="_ _3"></span>olymo<span class="_ _3"></span>rphism</span></div><div class="t m0 x7 h6 ya ff4 fs4 fc0 sc0 ls0 ws0">C++<span class="_ _a"> </span>Mechanisms<span class="_ _a"> </span>fo<span class="_ _3"></span>r<span class="_ _a"> </span>Polymo<span class="_ _3"></span>rphism</div><div class="t m0 x7 h6 yb ff5 fs4 fc0 sc0 ls0 ws0">virtual<span class="_ _a"> </span><span class="ff4">Metho<span class="_ _b"></span>ds</span></div><div class="t m0 x7 h6 yc ff4 fs4 fc0 sc0 ls0 ws0">Virtual<span class="_ _a"> </span>T<span class="_ _5"></span>able</div><div class="t m0 x7 h6 yd ff5 fs4 fc0 sc0 ls0 ws0">override<span class="_ _a"> </span><span class="ff4">Keyw<span class="_ _3"></span>ord</span></div><div class="t m0 x7 h6 ye ff5 fs4 fc0 sc0 ls0 ws0">final<span class="_ _a"> </span><span class="ff4">Keyw<span class="_ _3"></span>ord</span></div><div class="t m0 x7 h6 yf ff4 fs4 fc0 sc0 ls0 ws0">Common<span class="_ _a"> </span>Erro<span class="_ _3"></span>rs</div><div class="t m0 x7 h6 y10 ff4 fs4 fc0 sc0 ls0 ws0">Pure<span class="_ _a"> </span>Virtual<span class="_ _a"> </span>Metho<span class="_ _b"></span>d</div><div class="t m0 x7 h6 y11 ff4 fs4 fc0 sc0 ls0 ws0">Abstract<span class="_ _a"> </span>Class<span class="_ _a"> </span>and<span class="_ _a"> </span>Interface</div><div class="t m0 x6 h8 y12 ff1 fs4 fc2 sc0 ls0 ws0">2<span class="_ _9"> </span><span class="fs2 fc0">Inheritance<span class="_ _6"> </span>Casting<span class="_ _c"> </span>and<span class="_ _c"> </span>R<span class="_ _3"></span>un-time<span class="_ _6"> </span>T<span class="_ _d"></span>yp<span class="_ _b"></span>e<span class="_ _6"> </span>Identification</span></div><div class="t m0 x8 h9 y13 ff6 fs4 fc0 sc0 ls0 ws0"></div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">1/66</div><a class="l" href="#pf5" data-dest-detail='[5,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:47.076000px;bottom:194.372000px;width:93.841000px;height:14.745000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf9" data-dest-detail='[9,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:176.021000px;width:154.034000px;height:10.849000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pfc" data-dest-detail='[12,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:158.756000px;width:78.040000px;height:8.911000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pff" data-dest-detail='[15,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:139.553000px;width:56.344000px;height:8.911000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf13" data-dest-detail='[19,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:118.413000px;width:82.883000px;height:10.848000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf15" data-dest-detail='[21,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:99.210000px;width:67.192000px;height:10.848000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf16" data-dest-detail='[22,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:81.944000px;width:67.303000px;height:8.911000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf19" data-dest-detail='[25,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:62.741000px;width:88.612000px;height:8.911000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf1b" data-dest-detail='[27,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:43.538000px;width:119.662000px;height:8.911000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf1c" data-dest-detail='[28,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:47.076000px;bottom:17.687000px;width:367.495000px;height:16.885000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf3" class="pf w0 h0" data-page-no="3"><div class="pc pc3 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _d"></span>able<span class="_ _8"> </span>of<span class="_ _8"> </span>Contents</div><div class="t m0 x6 h8 y15 ff1 fs4 fc2 sc0 ls0 ws0">3<span class="_ _9"> </span><span class="fs2 fc0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _6"> </span>Overloading</span></div><div class="t m0 x7 h6 y16 ff4 fs4 fc0 sc0 ls0 ws0">Overview</div><div class="t m0 x7 h6 y17 ff4 fs4 fc0 sc0 ls0 ws0">Compa<span class="_ _3"></span>rison<span class="_ _a"> </span>Op<span class="_ _b"></span>erator<span class="_ _a"> </span><span class="ff5">operator&lt;</span></div><div class="t m0 x7 h6 y18 ff4 fs4 fc0 sc0 ls0 ws0">Spaceship<span class="_ _a"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _e"> </span><span class="ff5">operator&lt;=&gt;</span></div><div class="t m0 x7 h6 y19 ff4 fs4 fc0 sc0 ls0 ws0">Subscript<span class="_ _a"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _e"> </span><span class="ff5">operator[]</span></div><div class="t m0 x7 h6 y1a ff4 fs4 fc0 sc0 ls0 ws0">Multidimensional<span class="_ _a"> </span>Subscript<span class="_ _a"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _e"> </span><span class="ff5">operator[]</span></div><div class="t m0 x7 h6 y1b ff4 fs4 fc0 sc0 ls0 ws0">F<span class="_ _3"></span>unction<span class="_ _a"> </span>Call<span class="_ _a"> </span>Op<span class="_ _b"></span>erator<span class="_ _a"> </span><span class="ff5">operator()</span></div><div class="t m0 x7 h6 y1c ff5 fs4 fc0 sc0 ls0 ws0">static<span class="_"> </span>operator()<span class="_ _a"> </span><span class="ff4">and<span class="_ _a"> </span></span>static<span class="_"> </span>operator[]</div><div class="t m0 x7 h6 y1d ff4 fs4 fc0 sc0 ls0 ws0">Conversion<span class="_ _a"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _e"> </span><span class="ff5">operator<span class="_"> </span>T()</span></div><div class="t m0 x7 h6 y1e ff4 fs4 fc0 sc0 ls0 ws0">Return<span class="_ _a"> </span>T<span class="_ _5"></span>yp<span class="_ _b"></span>e<span class="_ _a"> </span>Overloading<span class="_ _a"> </span>Resolution</div><div class="t m0 xa hb y1f ff8 fs6 fc0 sc0 ls0 ws0"></div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">2/66</div><a class="l" href="#pf26" data-dest-detail='[38,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:47.076000px;bottom:204.335000px;width:143.920000px;height:14.744000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf27" data-dest-detail='[39,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:186.128000px;width:39.960000px;height:8.911000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf29" data-dest-detail='[41,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:162.974000px;width:141.572000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf2a" data-dest-detail='[42,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:141.978000px;width:144.201000px;height:11.068000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf2e" data-dest-detail='[46,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:120.981000px;width:136.756000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf2f" data-dest-detail='[47,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:99.985000px;width:210.813000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf30" data-dest-detail='[48,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:78.989000px;width:153.610000px;height:11.068000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf31" data-dest-detail='[49,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:57.992000px;width:201.549000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf32" data-dest-detail='[50,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:36.996000px;width:153.859000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf34" data-dest-detail='[52,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:16.220000px;width:164.037000px;height:12.349000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf4" class="pf w0 h0" data-page-no="4"><div class="pc pc4 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAJNklEQVR42u3YMcoUQRCA0W2ZwtAziFGfQEQmmEDwZl7Cu0wwBt5gEm9g9IdWsmYGwgSLYNfS76XNMnRtBx/V3r3/eAMAgDJ+fP/2yhQAAKhGpAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAA8EfLTFMAAKCOiLBJBQCgHJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAAD8V8u0N+/rdnV0HruXAQAwkE0qAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARmuZaQoAANQRETapAACUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAMBzW6a9eV+3q6Pz2L0MAICBbFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAwWstMUwAAoI6IsEkFAKAckQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAPGSZ9uZ93a6OzmP3MgAABrJJBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAwGgtM00BAIA6IsImFQCAckQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQB4bsu0N+/rdnV0HruXAQAwkE0qAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAADTaZlpCgAA1BERNqkAAJQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAlS3PfoG+bv/y8/PYPQIAgGpsUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUA4Mm0zDQFAADqiAibVAAAyhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAGCsZdqb93W7OjqP3csAABjIJhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAACjtcw0BQAA6ogIm1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgDAQ5Zpb97X7eroPHYvAwBgIJtUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAjNYy0xQAAKgjImxSAQAoR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAIDntkx7875uV0fnsXsZAAAD2aQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBgtJaZpgAAQB0RYZMKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAeMgy7c37ul0dncfuZQAADGSTCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgNFaZpoCAAB1RIRNKgAA5YhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgDw3JZpb97X7eroPHYvAwBgIJtUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAACm0zLTFAAAqCMibFIBAChHpAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAU1levrwd9e2fn776AwAA+Ev/8Lm1N6/vL79ut/v9biAAAJTwGypmT/AlVz3/AAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _d"></span>able<span class="_ _8"> </span>of<span class="_ _8"> </span>Contents</div><div class="t m0 x7 h6 y20 ff4 fs4 fc0 sc0 ls0 ws0">Increment<span class="_ _a"> </span>and<span class="_ _a"> </span>Decrement<span class="_ _a"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>rs<span class="_ _a"> </span><span class="ff5">operator++/</span></div><div class="t m0 x7 h6 y21 ff4 fs4 fc0 sc0 ls0 ws0">Assignment<span class="_ _a"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _e"> </span><span class="ff5">operator<span class="_"> </span>type=</span></div><div class="t m0 x7 h6 y22 ff4 fs4 fc0 sc0 ls0 ws0">Stream<span class="_ _a"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _e"> </span><span class="ff5">operator«</span></div><div class="t m0 x7 h6 y23 ff4 fs4 fc0 sc0 ls0 ws0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _a"> </span>Notes</div><div class="t m0 x6 h8 y24 ff1 fs4 fc2 sc0 ls0 ws0">4<span class="_ _9"> </span><span class="fs2 fc0">C++<span class="_ _c"> </span>Object<span class="_ _6"> </span>La<span class="_ _3"></span>y<span class="_ _3"></span>out</span></div><div class="t m0 xb h9 y25 ff6 fs4 fc0 sc0 ls0 ws0"></div><div class="t m0 x7 h6 y26 ff4 fs4 fc0 sc0 ls0 ws0">Aggregate</div><div class="t m0 x7 h6 y27 ff4 fs4 fc0 sc0 ls0 ws0">T<span class="_ _5"></span>rivial<span class="_ _a"> </span>Class</div><div class="t m0 x7 h6 y28 ff4 fs4 fc0 sc0 ls0 ws0">Standa<span class="_ _3"></span>rd-Lay<span class="_ _3"></span>out<span class="_ _a"> </span>Class</div><div class="t m0 x7 h6 y29 ff4 fs4 fc0 sc0 ls0 ws0">Plain<span class="_ _a"> </span>Old<span class="_ _a"> </span>Data<span class="_ _a"> </span>(POD)</div><div class="t m0 x7 h6 y2a ff4 fs4 fc0 sc0 ls0 ws0">Hiera<span class="_ _3"></span>rchy</div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">3/66</div><a class="l" href="#pf35" data-dest-detail='[53,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:201.345000px;width:220.301000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf36" data-dest-detail='[54,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:182.142000px;width:166.949000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf39" data-dest-detail='[57,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:162.939000px;width:122.587000px;height:11.069000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf3a" data-dest-detail='[58,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:143.957000px;width:66.278000px;height:10.848000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf3c" data-dest-detail='[60,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:47.076000px;bottom:113.124000px;width:149.903000px;height:16.885000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf3e" data-dest-detail='[62,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:94.774000px;width:44.223000px;height:10.848000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf41" data-dest-detail='[65,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:77.508000px;width:52.359000px;height:8.911000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf44" data-dest-detail='[68,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:56.368000px;width:95.032000px;height:10.848000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf45" data-dest-detail='[69,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:36.611000px;width:96.886000px;height:11.821000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf47" data-dest-detail='[71,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:49.490000px;bottom:17.962000px;width:41.344000px;height:10.848000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf5" class="pf w0 h0" data-page-no="5"><div class="pc pc5 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xc h2 y2b ff1 fs0 fc0 sc0 ls0 ws0">P<span class="_ _5"></span>olymo<span class="_ _3"></span>rphism</div><a class="l" href="#pf5" data-dest-detail='[5,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:132.432000px;width:160.686000px;height:24.026000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf6" class="pf w0 h0" data-page-no="6"><div class="pc pc6 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIqklEQVR42u3ZsU3DUBSGUT/kKyqLGRBVagqEEAUFCLEYS7BLilCwQRo2oIosJeI2pqOjSYGu43MmuPrdfHpuVzd3HQAAlPH58X5mBQAAqhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAD8aplpBQAA6ogIL6kAAJQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAGBh+hndurp/8MEAAI6z3axndK2XVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgBw2lpmzuXWcRx9MACA4wzDMJdTI8JLKgAA5YhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAy9Uy0woAANQREV5SAQAoR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSTQAAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAOEG9CQBgfzhcP73YgX+23ayN8JeWmVYAAKCOiPC7HwCAckQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAA5qrfvV7Wv/Lr8c2nAgBYiNXtc2sX59Puu+umaTIIAAAl/ADfRyj83wAiPQAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">P<span class="_ _3"></span>olymo<span class="_ _3"></span>rphism</div><div class="t m0 xd hc y2c ff1 fs7 fc1 sc0 ls0 ws0">P<span class="_ _3"></span>olymorphism</div><div class="t m0 xd hc y2d ff1 fs7 fc0 sc0 ls0 ws0">P<span class="_ _3"></span>olymorphism<span class="_ _a"> </span><span class="ff4">(meaning<span class="_ _e"> </span>“having<span class="_ _e"> </span>multiple<span class="_ _e"> </span>forms”)<span class="_ _a"> </span>is<span class="_ _e"> </span>the<span class="_ _e"> </span>capability<span class="_ _a"> </span>of<span class="_ _e"> </span>an<span class="_ _e"> </span>entity<span class="_ _a"> </span>of</span></div><div class="t m0 xd hc y2e ff9 fs7 fc0 sc0 ls0 ws0">mutating<span class="_ _8"> </span><span class="ff4">its<span class="_ _e"> </span>b<span class="_ _b"></span>ehavior<span class="_ _a"> </span>in<span class="_ _e"> </span>accordance<span class="_ _a"> </span>with<span class="_ _e"> </span>the<span class="_ _e"> </span>sp<span class="_ _b"></span>ecific<span class="_ _7"> </span>usage<span class="_ _a"> </span></span>context</div><div class="t m0 x1 hc y2f ff1 fs7 fc0 sc0 ls0 ws0">P<span class="_ _3"></span>olymorphism<span class="_ _e"> </span>dispatch<span class="_ _e"> </span><span class="ff4">can<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>implemented<span class="_ _e"> </span>at</span></div><div class="t m0 xe hc y30 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff1">Compile-time<span class="_ _e"> </span><span class="ff4">(<span class="ffb">static<span class="_"> </span>polymorphism</span>):<span class="_ _c"> </span>when<span class="_ _a"> </span>the<span class="_ _e"> </span>called<span class="_ _e"> </span>instance<span class="_ _e"> </span>is<span class="_ _e"> </span>known</span></span></div><div class="t m0 x7 hc y31 ff4 fs7 fc0 sc0 ls0 ws0">b<span class="_ _b"></span>efo<span class="_ _3"></span>re<span class="_ _e"> </span>the<span class="_ _e"> </span>program<span class="_ _a"> </span>start</div><div class="t m0 xe hc y32 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff1">R<span class="_ _3"></span>un-time<span class="_ _e"> </span><span class="ff4">(<span class="ffb">dynamic<span class="_"> </span>polymorphism</span>):<span class="_ _c"> </span>when<span class="_ _a"> </span>the<span class="_ _7"> </span>called<span class="_ _a"> </span>instance<span class="_ _e"> </span>is<span class="_ _e"> </span>known<span class="_ _a"> </span>only</span></span></div><div class="t m0 x7 hc y33 ff4 fs7 fc0 sc0 ls0 ws0">during<span class="_ _e"> </span>the<span class="_ _e"> </span>execution,<span class="_ _e"> </span>i.e.<span class="_ _c"> </span>depends<span class="_ _e"> </span>on<span class="_ _e"> </span>run-time<span class="_ _e"> </span>values</div><div class="t m0 x1 hc y34 ff4 fs7 fc0 sc0 ls0 ws0">In<span class="_ _e"> </span>C++,<span class="_ _e"> </span>the<span class="_ _e"> </span>term<span class="_ _e"> </span><span class="ff1">p<span class="_ _b"></span>olymorphic<span class="_ _a"> </span></span>is<span class="_ _e"> </span>strongly<span class="_ _e"> </span>asso<span class="_ _b"></span>ciated<span class="_ _e"> </span>with<span class="_ _e"> </span>dynamic<span class="_ _e"> </span>p<span class="_ _b"></span>olymorphism</div><div class="t m0 x1 hc y35 ff4 fs7 fc0 sc0 ls0 ws0">(<span class="ff9">overriding<span class="_ _f"></span></span>)</div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">4/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf7" class="pf w0 h0" data-page-no="7"><div class="pc pc7 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">F<span class="_ _3"></span>unction<span class="_ _8"> </span>Binding</div><div class="t m0 x1 hc y36 ff4 fs7 fc0 sc0 ls0 ws0">Connecting<span class="_ _e"> </span>the<span class="_ _e"> </span>function<span class="_ _e"> </span>call<span class="_ _e"> </span>to<span class="_ _e"> </span>the<span class="_ _e"> </span>function<span class="_ _e"> </span>b<span class="_ _b"></span>o<span class="_ _b"></span>dy<span class="_ _e"> </span>is<span class="_ _e"> </span>called<span class="_ _e"> </span><span class="ff9">Binding</span></div><div class="t m0 xe hc y37 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">In<span class="_ _10"> </span><span class="ff1">Ea<span class="_ _3"></span>rly<span class="_ _a"> </span>Binding<span class="_ _10"> </span><span class="ff4">or<span class="_ _11"> </span><span class="ff9">Static<span class="_ _11"> </span>Binding<span class="_ _7"> </span></span>or<span class="_ _11"> </span><span class="ff9">Compile-time<span class="_ _10"> </span>Binding</span>,<span class="_ _10"> </span>the<span class="_ _10"> </span>compiler<span class="_ _10"> </span>identifies</span></span></span></div><div class="t m0 x7 hc y38 ff4 fs7 fc0 sc0 ls0 ws0">the<span class="_ _e"> </span>t<span class="_ _3"></span>yp<span class="_ _b"></span>e<span class="_ _e"> </span>of<span class="_ _e"> </span>object<span class="_ _e"> </span>at<span class="_ _e"> </span>compile-time</div><div class="t m0 xf hc y39 ff4 fs7 fc0 sc0 ls0 ws0">-<span class="_"> </span>the<span class="_ _e"> </span>p<span class="_ _3"></span>rogram<span class="_ _e"> </span>can<span class="_ _e"> </span>jump<span class="_ _e"> </span>directly<span class="_ _e"> </span>to<span class="_ _e"> </span>the<span class="_ _e"> </span>function<span class="_ _7"> </span>address</div><div class="t m0 xe hc y3a ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">In<span class="_ _e"> </span><span class="ff1">Late<span class="_ _7"> </span>Binding<span class="_ _7"> </span></span>o<span class="_ _3"></span>r<span class="_ _7"> </span><span class="ff9">Dynamic<span class="_ _e"> </span>Binding<span class="_ _8"> </span></span>or<span class="_ _e"> </span><span class="ff9">R<span class="_ _3"></span>un-time<span class="_ _7"> </span>binding<span class="ff4">,<span class="_ _e"> </span>the<span class="_ _e"> </span>run-time<span class="_ _e"> </span>identifies</span></span></span></div><div class="t m0 x7 hc y3b ff4 fs7 fc0 sc0 ls0 ws0">the<span class="_ _7"> </span>type<span class="_ _7"> </span>of<span class="_ _8"> </span>object<span class="_ _7"> </span>at<span class="_ _7"> </span>execution-time<span class="_ _7"> </span>and<span class="_ _12"> </span><span class="ff9">then<span class="_ _12"> </span></span>matches<span class="_ _7"> </span>the<span class="_ _12"> </span>function<span class="_ _7"> </span>call<span class="_ _7"> </span>with<span class="_ _12"> </span>the</div><div class="t m0 x7 hc y3c ff4 fs7 fc0 sc0 ls0 ws0">co<span class="_ _3"></span>rrect<span class="_ _e"> </span>function<span class="_ _e"> </span>definition</div><div class="t m0 xf hc y3d ff4 fs7 fc0 sc0 ls0 ws0">-<span class="_"> </span>the<span class="_ _a"> </span>p<span class="_ _3"></span>rogram<span class="_ _a"> </span>has<span class="_ _a"> </span>to<span class="_ _10"> </span>read<span class="_ _a"> </span>the<span class="_ _a"> </span>address<span class="_ _a"> </span>held<span class="_ _10"> </span>in<span class="_ _a"> </span>the<span class="_ _a"> </span>p<span class="_ _b"></span>ointer<span class="_ _a"> </span>and<span class="_ _a"> </span>then<span class="_ _10"> </span>jump<span class="_ _a"> </span>to<span class="_ _a"> </span>that</div><div class="t m0 x3 hc y3e ff4 fs7 fc0 sc0 ls0 ws0">address<span class="_ _e"> </span>(less<span class="_ _e"> </span>efficient<span class="_ _e"> </span>since<span class="_ _e"> </span>it<span class="_ _e"> </span>involves<span class="_ _e"> </span>an<span class="_ _e"> </span>extra<span class="_ _e"> </span>level<span class="_ _e"> </span>of<span class="_ _e"> </span>indirection)</div><div class="t m0 x1 hc y3f ff4 fs7 fc0 sc0 ls0 ws0">C++<span class="_ _e"> </span>achieves<span class="_ _e"> </span><span class="ff1">late<span class="_ _7"> </span>binding<span class="_ _e"> </span></span>by<span class="_ _a"> </span>declaring<span class="_ _a"> </span>a<span class="_ _e"> </span><span class="ffb fc3">virtual<span class="_ _7"> </span></span>function</div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">5/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf8" class="pf w0 h0" data-page-no="8"><div class="pc pc8 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">P<span class="_ _3"></span>olymo<span class="_ _3"></span>rphism<span class="_ _8"> </span>F<span class="_ _3"></span>o<span class="_ _3"></span>rms</div><div class="t m0 xe hc y40 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff1">A<span class="_ _3"></span>d-ho<span class="_ _b"></span>c<span class="_ _7"> </span>p<span class="_ _b"></span>olymorphism<span class="ff4">:<span class="_ _8"> </span>when<span class="_ _e"> </span>it<span class="_ _e"> </span>involves<span class="_ _e"> </span>to<span class="_ _e"> </span>a<span class="_ _e"> </span>set<span class="_ _e"> </span>of<span class="_ _e"> </span>individually<span class="_ _7"> </span>specified<span class="_ _e"> </span>types,</span></span></div><div class="t m0 x7 hc y41 ff4 fs7 fc0 sc0 ls0 ws0">e.g.<span class="_ _8"> </span>function<span class="_ _7"> </span>overloading</div><div class="t m0 x7 hd y42 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>int<span class="ffc fc0">);</span></div><div class="t m0 x7 hd y43 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>double<span class="ffc fc0">);</span></div><div class="t m0 xe hc y44 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">P<span class="_ _3"></span>arametric<span class="_ _a"> </span>p<span class="_ _b"></span>olymorphism<span class="ff4">:<span class="_ _c"> </span>when<span class="_ _a"> </span>it<span class="_ _e"> </span>involves<span class="_ _e"> </span>generic<span class="_ _e"> </span>types,<span class="_ _e"> </span>e.g.<span class="_ _c"> </span>templates</span></span></div><div class="t m0 x7 hd y45 ff5 fs8 fc5 sc0 ls0 ws0">template<span class="ffc fc6">&lt;</span>typename<span class="_"> </span><span class="fc3">T<span class="ffc fc6">&gt;</span></span></div><div class="t m0 x7 hd y46 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc0">f(T);</span></div><div class="t m0 xe hc y47 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">Subt<span class="_ _3"></span>yping<span class="_ _f"></span><span class="ff4">:<span class="_ _c"> </span>when<span class="_ _e"> </span>it<span class="_ _e"> </span>op<span class="_ _b"></span>erates<span class="_ _e"> </span>on<span class="_ _e"> </span>elements<span class="_ _e"> </span>of<span class="_ _e"> </span>subt<span class="_ _3"></span>yp<span class="_ _b"></span>es,<span class="_ _e"> </span>e.g.<span class="_ _c"> </span>virtual<span class="_ _e"> </span>functions</span></span></div><div class="t m0 x7 hd y48 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>B<span class="_ _8"> </span>:<span class="_ _c"> </span>A</div><div class="t m0 x7 hd y49 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(A<span class="fc6">*</span>);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>also<span class="_ _8"> </span>works<span class="_ _c"> </span>for<span class="_ _12"> </span>B<span class="_ _c"> </span>if<span class="_ _12"> </span>the<span class="_ _c"> </span>called<span class="_ _12"> </span>function<span class="_ _c"> </span>are<span class="_ _12"> </span>virtual</span></span></span></div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">6/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf9" class="pf w0 h0" data-page-no="9"><div class="pc pc9 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">C++<span class="_ _12"> </span>Mechanisms<span class="_ _12"> </span>for<span class="_ _7"> </span>Polymo<span class="_ _3"></span>rphism<span class="_ _13"> </span>1/2</div><div class="t m0 xe hc y4a ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">Prep<span class="_ _3"></span>ro<span class="_ _b"></span>cessing</span></div><div class="t m0 x7 hd y4b ffd fs8 fc8 sc0 ls0 ws0">#<span class="_ _14"> </span>define<span class="_ _8"> </span>ADD(x,<span class="_ _8"> </span>y)<span class="_ _c"> </span>x<span class="_ _12"> </span>+<span class="_ _c"> </span>y<span class="_ _1"> </span><span class="fc7">//<span class="_ _c"> </span>ADD(3,<span class="_ _12"> </span>4)<span class="_ _c"> </span>or<span class="_ _12"> </span>ADD(3.0,<span class="_ _c"> </span>4.0)</span></div><div class="t m0 xe hc y4c ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">F<span class="_ _3"></span>unction/Op<span class="_ _b"></span>erator<span class="_ _a"> </span>overloading</span></div><div class="t m0 x7 hd y4d ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>int<span class="ffc fc0">);</span></div><div class="t m0 x7 hd y4e ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>double<span class="ffc fc0">);</span></div><div class="t m0 xe hc y4f ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">T<span class="_ _5"></span>emplates</span></div><div class="t m0 x7 hd y50 ff5 fs8 fc5 sc0 ls0 ws0">template<span class="ffc fc6">&lt;</span>typename<span class="_"> </span><span class="fc3">T<span class="ffc fc6">&gt;</span></span></div><div class="t m0 x7 hd y51 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc0">f(T);<span class="_ _15"> </span><span class="ffd fc7">//<span class="_ _8"> </span>f(3)<span class="_ _8"> </span>or<span class="_ _c"> </span>f(3.0)</span></span></div><div class="t m0 xe hc y52 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">Virtual<span class="_ _e"> </span>functions<span class="_ _12"> </span><span class="ff4">(see<span class="_ _e"> </span>next<span class="_ _7"> </span>slides)</span></span></div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">7/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pfa" class="pf w0 h0" data-page-no="a"><div class="pc pca w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">C++<span class="_ _12"> </span>Mechanisms<span class="_ _12"> </span>for<span class="_ _7"> </span>Polymo<span class="_ _3"></span>rphism<span class="_ _13"> </span>2/2</div><div class="t m0 xc he y53 ff1 fs8 fc0 sc0 ls0 ws0">Mechanism<span class="_ _16"> </span>Implementation<span class="_ _17"> </span>F<span class="_ _3"></span>orm</div><div class="t m0 x10 he y54 ff1 fs8 fc0 sc0 ls0 ws0">Prep<span class="_ _3"></span>ro<span class="_ _b"></span>cessing<span class="_ _18"> </span><span class="ffc">static<span class="_ _19"> </span><span class="ffe">P<span class="_ _3"></span>arametric</span></span></div><div class="t m0 x10 he y55 ff1 fs8 fc0 sc0 ls0 ws0">F<span class="_ _3"></span>unction/Op<span class="_ _b"></span>erator<span class="_ _a"> </span>overloading<span class="_ _1a"> </span><span class="ffc">static<span class="_ _19"> </span><span class="ffe">A<span class="_ _3"></span>d-ho<span class="_ _b"></span>c</span></span></div><div class="t m0 x10 he y56 ff1 fs8 fc0 sc0 ls0 ws0">T<span class="_ _5"></span>emplate<span class="_ _1b"> </span><span class="ffc">static<span class="_ _19"> </span><span class="ffe">P<span class="_ _3"></span>arametric</span></span></div><div class="t m0 x10 he y57 ff1 fs8 fc0 sc0 ls0 ws0">Virtual<span class="_ _a"> </span>function<span class="_ _1c"> </span><span class="ffc">dynamic<span class="_ _1d"> </span><span class="ffe">Subt<span class="_ _3"></span>yping</span></span></div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">8/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pfb" class="pf w0 h0" data-page-no="b"><div class="pc pcb w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIlklEQVR42u3ZMU4CURSG0XlkbqwmrsFYsQJiCAWFiTtzE+yFQgt3QOMOrMhU3Gbs7CDGKFziOSt487/my5t2v1h2AABQxvvb68wKAABUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAPjSMtMKAADUERFeUgEAKEekAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAP5Sb4KLm6/W/+RLdy9b1w0AfEfLTCsAAFBHRPjdDwBAOSIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAwO/rr+is4zi6MACAnxmG4YpO6yUVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRagIAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAOK1lphUAAKgjIrykAgBQjkgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAEB1/f75zgpn9vG4MQIAwDHzh6fWbm+m/aHrpmkyCAAAJXwCMRkgAFicuEEAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Dynamic<span class="_ _12"> </span>P<span class="_ _3"></span>olymorphism<span class="_ _7"> </span>in<span class="_ _12"> </span>C++</div><div class="t m0 xe hc y58 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">A<span class="_ _3"></span>t<span class="_ _e"> </span>run-time,<span class="_ _e"> </span>objects<span class="_ _e"> </span>of<span class="_ _e"> </span>a<span class="_ _e"> </span><span class="ff9">base<span class="_ _7"> </span>class<span class="_ _12"> </span></span>b<span class="_ _b"></span>ehave<span class="_ _e"> </span>as<span class="_ _e"> </span>objects<span class="_ _e"> </span>of<span class="_ _e"> </span>a<span class="_ _e"> </span><span class="ff9">derived<span class="_ _e"> </span>class</span></span></div><div class="t m0 xe hc y59 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">A<span class="_ _e"> </span><span class="ff1">Base<span class="_ _e"> </span></span>class<span class="_ _e"> </span>may<span class="_ _a"> </span>define<span class="_ _e"> </span>and<span class="_ _e"> </span>implement<span class="_ _e"> </span>p<span class="_ _b"></span>olymorphic<span class="_ _a"> </span>metho<span class="_ _b"></span>ds,<span class="_ _e"> </span>and<span class="_ _e"> </span><span class="ff1">derived</span></span></div><div class="t m0 x7 hc y5a ff4 fs7 fc0 sc0 ls0 ws0">classes<span class="_ _e"> </span>can<span class="_ _e"> </span><span class="ff1">override<span class="_ _e"> </span></span>them,<span class="_ _e"> </span>which<span class="_ _e"> </span>means<span class="_ _e"> </span>they<span class="_ _e"> </span>provide<span class="_ _a"> </span>their<span class="_ _e"> </span>own<span class="_ _a"> </span>implementations,</div><div class="t m0 x7 hc y5b ff4 fs7 fc0 sc0 ls0 ws0">invok<span class="_ _3"></span>ed<span class="_ _e"> </span>at<span class="_ _e"> </span>run-time<span class="_ _e"> </span>dep<span class="_ _b"></span>ending<span class="_ _e"> </span>on<span class="_ _e"> </span>the<span class="_ _e"> </span>context</div><div class="t m0 x1 hd y5c ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y5d ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_ _1e"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y5e ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y5f ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd y60 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y61 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y62 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">g<span class="fc0">(A<span class="fc6">&amp;<span class="_"> </span></span>a)<span class="_"> </span>{<span class="_"> </span>a.f();<span class="_"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>accepts<span class="_ _8"> </span>A<span class="_ _c"> </span>and<span class="_ _12"> </span>B</span></span></span></div><div class="t m0 x12 hd y63 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>note:<span class="_ _8"> </span>g(B<span class="fff">&amp;</span>)<span class="_ _c"> </span>would<span class="_ _12"> </span>only<span class="_ _c"> </span>accept<span class="_ _12"> </span>B</div><div class="t m0 x1 hd y64 ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>a;<span class="_"> </span>B<span class="_"> </span>b;</div><div class="t m0 x1 hd y65 ffc fs8 fc0 sc0 ls0 ws0">g(a);<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;A&quot;</span></div><div class="t m0 x1 hd y66 ffc fs8 fc0 sc0 ls0 ws0">g(b);<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="fca">print<span class="_ _8"> </span>&quot;A&quot;<span class="_ _c"> </span>not<span class="_ _12"> </span>&quot;B&quot;!!!</span></span></div><div class="t m0 x9 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">9/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pfc" class="pf w0 h0" data-page-no="c"><div class="pc pcc w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">P<span class="_ _3"></span>olymo<span class="_ _3"></span>rphism<span class="_ _8"> </span>-<span class="_ _12"> </span><span class="ff5">virtual<span class="_ _12"> </span></span>metho<span class="_ _b"></span>d</div><div class="t m0 x1 hd y67 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y68 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y69 ffc fs8 fc0 sc0 ls0 ws0">};<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>now<span class="_ _8"> </span>&quot;f()&quot;<span class="_ _c"> </span>is<span class="_ _12"> </span><span class="fff">virtual</span>,<span class="_ _c"> </span>evaluated<span class="_ _12"> </span>at<span class="_ _c"> </span>run-time</span></div><div class="t m0 x1 hd y6a ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x13 hd y6b ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x13 hd y6c ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>now<span class="_ _8"> </span>B::f()<span class="_ _c"> </span>overrides<span class="_ _12"> </span>A::f(),<span class="_ _c"> </span>run-time<span class="_ _12"> </span>dispatch</div><div class="t m0 x13 hd y6d ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span><span class="ff10">&apos;<span class="fff">virtual<span class="_ _8"> </span>void<span class="_ _c"> </span>f()</span>&apos;<span class="_ _12"> </span></span>is<span class="_ _c"> </span>also<span class="_ _12"> </span>valid</div><div class="t m0 x1 hd y6e ffc fs8 fc0 sc0 ls0 ws0">};<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="ff10">&apos;<span class="fff">override</span>&apos;<span class="_ _8"> </span></span>is<span class="_ _c"> </span>a<span class="_ _12"> </span>c++11<span class="_ _c"> </span>feature,<span class="_ _12"> </span>more<span class="_ _c"> </span>details<span class="_ _12"> </span>in<span class="_ _c"> </span>the<span class="_ _12"> </span>next<span class="_ _c"> </span>slides</span></div><div class="t m0 x1 hd y6f ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">g<span class="fc0">(A<span class="fc6">&amp;<span class="_"> </span></span>a)<span class="_"> </span>{<span class="_"> </span>a.f();<span class="_"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>accepts<span class="_ _8"> </span>A<span class="_ _c"> </span>and<span class="_ _12"> </span>B</span></span></span></div><div class="t m0 x1 hd y70 ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>a;</div><div class="t m0 x1 hd y71 ffc fs8 fc0 sc0 ls0 ws0">B<span class="_"> </span>b;</div><div class="t m0 x1 hd y72 ffc fs8 fc0 sc0 ls0 ws0">g(a);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;A&quot;</span></div><div class="t m0 x1 hd y73 ffc fs8 fc0 sc0 ls0 ws0">g(b);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="fca">NOW,<span class="_ _8"> </span>print<span class="_ _c"> </span>&quot;B&quot;!!!</span></span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">10/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pfd" class="pf w0 h0" data-page-no="d"><div class="pc pcd w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">When<span class="_ _12"> </span><span class="ff5">virtual<span class="_ _12"> </span></span>wo<span class="_ _3"></span>rks</div><div class="t m0 x1 hd y67 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y68 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y69 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y6a ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd y6b ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y6c ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y6e ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(A<span class="fc6">&amp;<span class="_"> </span></span>a)<span class="_"> </span>{<span class="_"> </span>a.f();<span class="_ _1e"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>ok,<span class="_ _8"> </span>print<span class="_ _c"> </span>&quot;B&quot;</span></span></span></div><div class="t m0 x1 hd y74 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">g<span class="fc0">(A<span class="fc6">*<span class="_"> </span></span>a)<span class="_"> </span>{<span class="_"> </span>a<span class="fc6">-&gt;</span>f();<span class="_"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>ok,<span class="_ _8"> </span>print<span class="_ _c"> </span>&quot;B&quot;</span></span></span></div><div class="t m0 x1 hd y6f ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">h<span class="fc0">(A<span class="_ _1e"> </span>a)<span class="_"> </span>{<span class="_"> </span>a.f();<span class="_ _1e"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>does<span class="_ _8"> </span>not<span class="_ _c"> </span>work<span class="_ _12"> </span>with<span class="_ _c"> </span>pass-by<span class="_ _12"> </span>value!!<span class="_ _c"> </span>print<span class="_ _12"> </span>&quot;A&quot;</span></span></span></div><div class="t m0 x1 hd y70 ffc fs8 fc0 sc0 ls0 ws0">B<span class="_"> </span>b;</div><div class="t m0 x1 hd y71 ffc fs8 fc0 sc0 ls0 ws0">f(b);<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;B&quot;</span></div><div class="t m0 x1 hd y72 ffc fs8 fc0 sc0 ls0 ws0">g(<span class="fc6">&amp;</span>b);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;B&quot;</span></div><div class="t m0 x1 hd y73 ffc fs8 fc0 sc0 ls0 ws0">h(b);<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;A&quot;<span class="_ _c"> </span>(cast<span class="_ _12"> </span>to<span class="_ _c"> </span>A)</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">11/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pfe" class="pf w0 h0" data-page-no="e"><div class="pc pce w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4YtcsDqcQaycQMRauM1cwnEsHMINrI5UpomdAwjCf97zTBC+NC9/2h1OHQAAhPG431ZWAAAgGpEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAMBHqrVaAQCAOHLOLqkAAIQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAGBh+hm9tZTiwwAAvjMMw4xe65IKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBINQEAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAD8p1RrtQIAAHHknF1SAQAIR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQDgV/rpsrXCcjzPVyMAAMHtj2NKm3WbXl3XWjMIAAAhvAEq/RoCZfdZkgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">P<span class="_ _3"></span>olymo<span class="_ _3"></span>rphism<span class="_ _8"> </span>Dynamic<span class="_ _12"> </span>Behavio<span class="_ _3"></span>r</div><div class="t m0 x1 hd y75 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y76 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y77 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y78 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd y79 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y7a ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y7b ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">*<span class="_"> </span><span class="fc3">get_object</span></span>(<span class="ff5 fc4">bool<span class="_"> </span></span>selectA)<span class="_"> </span>{</div><div class="t m0 x11 hd y7c ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">(selectA)<span class="_"> </span><span class="fc6">?<span class="_"> </span></span></span>new<span class="_"> </span><span class="ffc fc0">A()<span class="_"> </span><span class="fc6">:<span class="_"> </span></span></span>new<span class="_"> </span><span class="ffc fc0">B();</span></div><div class="t m0 x1 hd y7d ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y7e ffc fs8 fc0 sc0 ls0 ws0">get_object(<span class="fc5">true</span>)<span class="fc6">-&gt;</span>f();<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;A&quot;</span></div><div class="t m0 x1 hd y7f ffc fs8 fc0 sc0 ls0 ws0">get_object(<span class="fc5">false</span>)<span class="fc6">-&gt;</span>f();<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;B&quot;</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">12/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pff" class="pf w0 h0" data-page-no="f"><div class="pc pcf w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Virtual<span class="_ _12"> </span>T<span class="_ _5"></span>able<span class="_ _20"> </span>1/2</div><div class="t m0 xd hc y80 ff1 fs7 fc1 sc0 ls0 ws0">vtable</div><div class="t m0 xd hc y81 ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ff1">virtual<span class="_ _7"> </span>table<span class="_ _e"> </span></span>(<span class="ffb">vtable</span>)<span class="_ _e"> </span>is<span class="_ _e"> </span>a<span class="_ _e"> </span>lo<span class="_ _b"></span>okup<span class="_ _e"> </span>table<span class="_ _e"> </span>of<span class="_ _e"> </span>functions<span class="_ _e"> </span>used<span class="_ _e"> </span>to<span class="_ _e"> </span>resolve<span class="_ _e"> </span>function</div><div class="t m0 xd hc y82 ff4 fs7 fc0 sc0 ls0 ws0">calls<span class="_ _e"> </span>and<span class="_ _e"> </span>supp<span class="_ _b"></span>ort<span class="_ _a"> </span><span class="ff9">dynamic<span class="_ _e"> </span>dispatch<span class="_ _7"> </span></span>(late<span class="_ _a"> </span>binding)</div><div class="t m0 x1 hc y83 ff4 fs7 fc0 sc0 ls0 ws0">A<span class="_ _e"> </span><span class="ff9">virtual<span class="_ _e"> </span>table<span class="_ _7"> </span></span>contains<span class="_ _e"> </span>one<span class="_ _7"> </span>entry<span class="_ _a"> </span>for<span class="_ _a"> </span>each<span class="_ _21"> </span><span class="ffb">virtual<span class="_ _21"> </span></span>function<span class="_ _a"> </span>that<span class="_ _e"> </span>can<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>called<span class="_ _e"> </span>by</div><div class="t m0 x1 hc y84 ff4 fs7 fc0 sc0 ls0 ws0">objects<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span>class.<span class="_ _c"> </span>Each<span class="_ _a"> </span>entry<span class="_ _e"> </span>in<span class="_ _e"> </span>this<span class="_ _e"> </span>table<span class="_ _e"> </span>is<span class="_ _e"> </span>simply<span class="_ _e"> </span>a<span class="_ _e"> </span>function<span class="_ _e"> </span>p<span class="_ _b"></span>ointer<span class="_ _7"> </span>that<span class="_ _a"> </span>p<span class="_ _b"></span>oints<span class="_ _e"> </span>to</div><div class="t m0 x1 hc y85 ff4 fs7 fc0 sc0 ls0 ws0">the<span class="_ _e"> </span><span class="ff9">most-derived<span class="_ _8"> </span></span>function<span class="_ _e"> </span>accessible<span class="_ _e"> </span>by<span class="_ _a"> </span>that<span class="_ _e"> </span>class</div><div class="t m0 x1 hc y86 ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span>compiler<span class="_ _e"> </span>adds<span class="_ _e"> </span>a<span class="_ _e"> </span><span class="ff9">hidden<span class="_ _e"> </span></span>p<span class="_ _0"></span>ointer<span class="_ _a"> </span>to<span class="_ _e"> </span>the<span class="_ _e"> </span>base<span class="_ _e"> </span>class<span class="_ _e"> </span>which<span class="_ _e"> </span>p<span class="_ _b"></span>oints<span class="_ _e"> </span>to<span class="_ _e"> </span>the<span class="_ _e"> </span>virtual<span class="_ _e"> </span>table</div><div class="t m0 x1 hc y87 ff4 fs7 fc0 sc0 ls0 ws0">fo<span class="_ _3"></span>r<span class="_ _e"> </span>that<span class="_ _e"> </span>class<span class="_ _e"> </span>(<span class="_ _a"> </span><span class="ffb">sizeof<span class="_ _22"> </span></span>considers<span class="_ _e"> </span>the<span class="_ _e"> </span><span class="ffb">vtable<span class="_ _e"> </span></span>p<span class="_ _b"></span>ointer)</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">13/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf10" class="pf w0 h0" data-page-no="10"><div class="pc pc10 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Virtual<span class="_ _12"> </span>T<span class="_ _5"></span>able<span class="_ _20"> </span>2/2</div><div class="t m0 x15 hf y88 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x1 hf y89 ff5 fs5 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">();</span></span></span></div><div class="t m0 x1 hf y8a ff5 fs5 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ff11 fc3">g<span class="fc0">();</span></span></span></div><div class="t m0 x15 hf y8b ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x15 hf y8c ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ff11 fc6">:<span class="_ _12"> </span><span class="fc0">A<span class="_ _7"> </span>{</span></span></span></div><div class="t m0 x1 hf y8d ff5 fs5 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">()<span class="_ _12"> </span></span></span><span class="fc5">override<span class="ff11 fc0">;</span></span></div><div class="t m0 x15 hf y8e ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">14/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf11" class="pf w0 h0" data-page-no="11"><div class="pc pc11 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Do<span class="_ _b"></span>es<span class="_ _12"> </span>the<span class="_ _12"> </span><span class="ff5">vtable<span class="_ _8"> </span></span>really<span class="_ _12"> </span>exist?<span class="_ _23"> </span><span class="fs4">(answ<span class="_ _3"></span>er:<span class="_ _c"> </span>YES)</span></div><div class="t m0 x1 hd y8f ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y90 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x<span class="_"> </span><span class="fc6">=<span class="_"> </span>3</span>;</span></div><div class="t m0 x11 hd y91 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;abc&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y92 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y93 ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">*<span class="_"> </span></span>a1<span class="_"> </span><span class="fc6">=<span class="_"> </span><span class="ff5 fc5">new<span class="_"> </span></span></span>A;</div><div class="t m0 x1 hd y94 ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">*<span class="_"> </span></span>a2<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>(A<span class="fc6">*</span>)<span class="_"> </span>malloc(<span class="ff5 fc5">sizeof</span>(A));</div><div class="t m0 x1 hd y95 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>a1<span class="fc6">-&gt;</span>x;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;3&quot;</span></div><div class="t m0 x1 hd y96 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>a2<span class="fc6">-&gt;</span>x;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>undefined<span class="_ _8"> </span>value!!</span></div><div class="t m0 x1 hd y97 ffc fs8 fc0 sc0 ls0 ws0">a1<span class="fc6">-&gt;</span>f();<span class="_ _24"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;abc&quot;</span></div><div class="t m0 x1 h10 y98 ffc fs8 fc0 sc0 ls0 ws0">a2<span class="fc6">-&gt;</span>f();<span class="_ _24"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="ff12">segmentation<span class="_ _a"> </span>fault</span></span></div><div class="t m0 x16 h11 y98 ff13 fs8 fc7 sc0 ls0 ws0"><span class="fcb sc0">A</span></div><div class="t m0 x1 hc y99 ff4 fs7 fc0 sc0 ls0 ws0">Lesson<span class="_ _e"> </span>lea<span class="_ _3"></span>rned:<span class="_ _c"> </span>Never<span class="_ _a"> </span>use<span class="_ _21"> </span><span class="ffb">malloc<span class="_ _22"> </span></span>in<span class="_ _e"> </span>C++</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">15/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf12" class="pf w0 h0" data-page-no="12"><div class="pc pc12 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIj0lEQVR42u3YsU0DQRCG0V3rRkQrakCOqAAhYkvujCYoh4Ai3AGRtRGTHBmBQwcwh9+rYPVv8mn6/umlAQBAGaeP950VAACoRqQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAPCjZ6YVAACoIyJcUgEAKEekAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAADwa5YNvXXO6cMujDGMAAD8Py6pAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAOBv9cy0AgAAdUSESyoAAOWIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAAChm2dBb55w+DADgOmOMDb3WJRUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJFqAgAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQCgtdZ6ZloBAIA6IsIlFQCAckQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUA4BYt59cHK1DK5+HNCABwyx6fj73f363nr9bWdTUIAAAlfANiiiAAx5lcxgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Virtual<span class="_ _12"> </span>Metho<span class="_ _b"></span>d<span class="_ _12"> </span>Notes</div><div class="t m0 xd hc y9a ffb fs7 fc0 sc0 ls0 ws0">virtual<span class="_ _22"> </span><span class="ff4">classes<span class="_ _e"> </span>allo<span class="_ _b"></span>cate<span class="_ _e"> </span>one<span class="_ _e"> </span>extra<span class="_ _e"> </span>p<span class="_ _b"></span>ointer<span class="_ _7"> </span>(hidden)</span></div><div class="t m0 x1 hd y9b ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y9c ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f1<span class="fc0">();</span></span></span></div><div class="t m0 x11 hd y9d ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f2<span class="fc0">();</span></span></span></div><div class="t m0 x1 hd y9e ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y9f ff5 fs8 fc5 sc0 ls0 ws0">class<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{};</span></span></span></div><div class="t m0 x1 hd ya0 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="ff5 fc5">sizeof</span></span>(A);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>8<span class="_ _8"> </span>bytes<span class="_ _c"> </span>(vtable<span class="_ _12"> </span>pointer)</span></div><div class="t m0 x1 hd ya1 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="ff5 fc5">sizeof</span></span>(B);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>8<span class="_ _8"> </span>bytes<span class="_ _c"> </span>(vtable<span class="_ _12"> </span>pointer)</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">16/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf13" class="pf w0 h0" data-page-no="13"><div class="pc pc13 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff5 fs3 fc1 sc0 ls0 ws0">override<span class="_ _12"> </span><span class="ff1">Keyw<span class="_ _3"></span>ord<span class="_ _25"> </span>1/2</span></div><div class="t m0 xd hc ya2 ff5 fs7 fc1 sc0 ls0 ws0">override<span class="_ _7"> </span><span class="ff1">Keyw<span class="_ _3"></span>ord<span class="_ _e"> </span>(<span class="fs4">C++11</span>)</span></div><div class="t m0 xd hc ya3 ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ffb fc3">override<span class="_ _e"> </span></span>k<span class="_ _3"></span>eywo<span class="_ _3"></span>rd<span class="_ _e"> </span>ensures<span class="_ _e"> </span>that<span class="_ _e"> </span>the<span class="_ _e"> </span>function<span class="_ _e"> </span>is<span class="_ _e"> </span><span class="ffb">virtual<span class="_ _e"> </span></span>and<span class="_ _e"> </span>is<span class="_ _e"> </span>overriding<span class="_ _e"> </span>a</div><div class="t m0 xd hc ya4 ffb fs7 fc0 sc0 ls0 ws0">virtual<span class="_ _e"> </span><span class="ff4">function<span class="_ _e"> </span>from<span class="_ _e"> </span>a<span class="_ _e"> </span>base<span class="_ _e"> </span>class</span></div><div class="t m0 xe hc ya5 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">It<span class="_ _e"> </span>fo<span class="_ _3"></span>rces<span class="_ _e"> </span>the<span class="_ _e"> </span>compiler<span class="_ _e"> </span>to<span class="_ _7"> </span>check<span class="_ _a"> </span>the<span class="_ _e"> </span>base<span class="_ _e"> </span>class<span class="_ _e"> </span>to<span class="_ _e"> </span>see<span class="_ _e"> </span>if<span class="_ _e"> </span>there<span class="_ _7"> </span>is<span class="_ _a"> </span>a<span class="_ _21"> </span><span class="ffb">virtual</span></span></div><div class="t m0 x7 hc ya6 ff4 fs7 fc0 sc0 ls0 ws0">function<span class="_ _e"> </span>with<span class="_ _e"> </span>this<span class="_ _e"> </span>exact<span class="_ _e"> </span>signature</div><div class="t m0 xe hc ya7 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _26"> </span><span class="ffb">override<span class="_ _22"> </span><span class="ff4">clearly<span class="_ _a"> </span>expresses<span class="_ _a"> </span>the<span class="_ _e"> </span>intent<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span>function,<span class="_ _e"> </span>making<span class="_ _7"> </span>the<span class="_ _a"> </span>co<span class="_ _b"></span>de<span class="_ _e"> </span>easier<span class="_ _e"> </span>to</span></span></div><div class="t m0 x7 hc ya8 ff4 fs7 fc0 sc0 ls0 ws0">understand</div><div class="t m0 xd hc ya9 ffb fs7 fc0 sc0 ls0 ws0">override<span class="_ _22"> </span><span class="ff4">implies<span class="_ _21"> </span></span>virtual<span class="_ _22"> </span><span class="ff4">(<span class="_ _10"> </span></span>virtual<span class="_ _21"> </span><span class="ff4">should<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>omitted)</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">17/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf14" class="pf w0 h0" data-page-no="14"><div class="pc pc14 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff5 fs3 fc1 sc0 ls0 ws0">override<span class="_ _12"> </span><span class="ff1">Keyw<span class="_ _3"></span>ord<span class="_ _25"> </span>2/2</span></div><div class="t m0 x1 hd y75 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y76 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>int<span class="_"> </span><span class="ffc fc0">a);<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>a<span class="_ _8"> </span>&quot;float&quot;<span class="_ _c"> </span>value<span class="_ _12"> </span>is<span class="_ _c"> </span>casted<span class="_ _12"> </span>to<span class="_ _c"> </span>&quot;int&quot;</span></span></span></div><div class="t m0 x1 hd y77 ffc fs8 fc0 sc0 ls0 ws0">};<span class="_ _28"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="ff14"><span class="_ _29"> </span><span class="_ _29"> </span></span></span></div><div class="t m0 x1 hd y78 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd y79 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>int<span class="_ _2a"> </span><span class="ffc fc0">a)<span class="_"> </span></span><span class="fc5">override<span class="ffc fc0">;<span class="_ _17"> </span><span class="ffd fc7">//<span class="_ _c"> </span>ok</span></span></span></div><div class="t m0 x11 hd y7a ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>float<span class="_"> </span><span class="ffc fc0">a);<span class="_ _2b"> </span><span class="ffd fc7">//<span class="_ _8"> </span>(still)<span class="_ _8"> </span>very<span class="_ _c"> </span>dangerous!!</span></span></div><div class="t m0 x17 hd yaa ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span><span class="ff14"><span class="_ _29"> </span><span class="_ _29"> </span></span></div><div class="t m0 x1 h10 y7c ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _1e"> </span>void<span class="_ _8"> </span>f(float<span class="_ _8"> </span>a)<span class="_ _c"> </span>override;<span class="_ _17"> </span>//<span class="_ _8"> </span><span class="ff12">compile<span class="_ _a"> </span>erro<span class="_ _3"></span>r<span class="_"> </span><span class="ffd">not<span class="_ _c"> </span>safe</span></span></div><div class="t m0 x1 h10 y7d ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _1e"> </span>void<span class="_ _8"> </span>f(int<span class="_ _2a"> </span>a)<span class="_ _8"> </span>const<span class="_ _c"> </span>override;<span class="_ _12"> </span>//<span class="_ _c"> </span><span class="ff12">compile<span class="_ _10"> </span>erro<span class="_ _3"></span>r<span class="_ _c"> </span><span class="ffd">not<span class="_ _12"> </span>safe</span></span></div><div class="t m0 x1 hd yab ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y7f ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span><span class="ff14"><span class="_ _29"> </span><span class="_ _29"> </span><span class="_ _8"> </span></span>f(3.3f)<span class="_ _8"> </span>has<span class="_ _8"> </span>a<span class="_ _c"> </span>different<span class="_ _12"> </span>behavior<span class="_ _c"> </span>between<span class="_ _12"> </span>A<span class="_ _c"> </span>and<span class="_ _12"> </span>B</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">18/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf15" class="pf w0 h0" data-page-no="15"><div class="pc pc15 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff5 fs3 fc1 sc0 ls0 ws0">final<span class="_ _12"> </span><span class="ff1">Keyw<span class="_ _3"></span>ord</span></div><div class="t m0 xd hc yac ff5 fs7 fc1 sc0 ls0 ws0">final<span class="_ _7"> </span><span class="ff1">Keyw<span class="_ _3"></span>ord<span class="_ _e"> </span>(<span class="fs4">C++11</span>)</span></div><div class="t m0 xd hc yad ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _22"> </span><span class="ffb fc3">final<span class="_ _21"> </span></span>k<span class="_ _3"></span>eywo<span class="_ _3"></span>rd<span class="_ _e"> </span>p<span class="_ _3"></span>revents<span class="_ _e"> </span>inheriting<span class="_ _e"> </span>from<span class="_ _e"> </span>classes<span class="_ _e"> </span>or<span class="_ _a"> </span>overriding<span class="_ _e"> </span>metho<span class="_ _b"></span>ds<span class="_ _e"> </span>in</div><div class="t m0 xd hc yae ff4 fs7 fc0 sc0 ls0 ws0">derived<span class="_ _e"> </span>classes</div><div class="t m0 x1 hd yaf ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd yb0 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>int<span class="_"> </span><span class="ffc fc0">a)<span class="_"> </span></span></span>final<span class="ffc fc0">;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>&quot;final&quot;<span class="_ _8"> </span>method</span></span></div><div class="t m0 x1 hd yb1 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yb2 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x1 h10 yb3 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _1e"> </span>void<span class="_ _8"> </span>f(int<span class="_ _8"> </span>a);<span class="_ _2a"> </span>//<span class="_ _c"> </span><span class="ff12">compile<span class="_ _10"> </span>erro<span class="_ _3"></span>r<span class="_ _c"> </span><span class="ffd">f(int)<span class="_ _12"> </span>is<span class="_ _c"> </span>&quot;final&quot;</span></span></div><div class="t m0 x11 hd yb4 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">(</span></span>float<span class="_"> </span><span class="ffc fc0">a);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>dangerous<span class="_ _8"> </span>(still<span class="_ _c"> </span>possible)</span></span></div><div class="t m0 x1 hd yb5 ffc fs8 fc0 sc0 ls0 ws0">};<span class="_ _2c"> </span><span class="ffd fc7">//<span class="_ _8"> </span>&quot;override&quot;<span class="_ _8"> </span>prevents<span class="_ _c"> </span>these<span class="_ _12"> </span>errors</span></div><div class="t m0 x1 hd yb6 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">C<span class="_"> </span></span>final<span class="_"> </span><span class="ffc fc0">{<span class="_ _2d"> </span><span class="ffd fc7">//<span class="_ _8"> </span>cannot<span class="_ _8"> </span>be<span class="_ _c"> </span>extended</span></span></div><div class="t m0 x1 hd yb7 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 h10 yb8 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>struct<span class="_ _8"> </span>D<span class="_ _c"> </span>:<span class="_ _12"> </span>C<span class="_ _c"> </span>{<span class="_ _1f"> </span>//<span class="_ _12"> </span><span class="ff12">compile<span class="_ _a"> </span>erro<span class="_ _3"></span>r<span class="_ _c"> </span><span class="ffd">C<span class="_ _12"> </span>is<span class="_ _c"> </span>&quot;final&quot;</span></span></div><div class="t m0 x1 hd yb9 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">19/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf16" class="pf w0 h0" data-page-no="16"><div class="pc pc16 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIk0lEQVR42u3YsWkDQRCG0Vtxg6LFNQhFrsAYxwJ35iZcjgIVoQ4ciY08ySkzxpmMjUbovQqW/+D4mLZ9epkAAKCM42G/sgIAANWIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAvrTMtAIAAHVEhEsqAADliFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAANy72QRw58YYRvih924E8Ivwi7gul1QAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAcF0tM60AAEAdEeGSCgBAOSIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEA4Jv5ht46xvDBAAB+p/d+Q691SQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKSaAAAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAAamqZaQUAAOqICJdUAADKEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAAPDH5tPbxgpwqY/duxEA4J88Pr+29rBeTp/TtCyLQQAAKOEMRP4jABUY6jsAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Virtual<span class="_ _12"> </span>Metho<span class="_ _b"></span>ds<span class="_ _12"> </span><span class="fs4">(Common<span class="_ _7"> </span>Erro<span class="_ _3"></span>r<span class="_ _e"> </span>1)</span></div><div class="t m0 x1 hc yba ff1 fs7 fc0 sc0 ls0 ws0">All<span class="_ _7"> </span>classes<span class="_ _7"> </span>with<span class="_ _7"> </span>at<span class="_ _7"> </span>least<span class="_ _7"> </span>one<span class="_ _21"> </span><span class="ff5">virtual<span class="_ _21"> </span></span>metho<span class="_ _0"></span>d<span class="_ _e"> </span>should<span class="_ _7"> </span>declare<span class="_ _e"> </span>a<span class="_ _2e"> </span><span class="ff5">virtual</span></div><div class="t m0 x1 h12 ybb ff15 fs7 fc0 sc0 ls0 ws0">destructo<span class="_ _3"></span>r</div><div class="t m0 x1 hf ybc ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf ybd ff16 fs5 fc0 sc0 ls0 ws0"><span class="ff11">A()<span class="_ _7"> </span>{<span class="_ _12"> </span>cout<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _7"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_ _12"> </span>}<span class="_ _2f"> </span><span class="ffd fc7">//<span class="_ _7"> </span>&lt;--<span class="_ _12"> </span>here<span class="_ _7"> </span>the<span class="_ _12"> </span>problem<span class="_ _7"> </span>(not<span class="_ _12"> </span>virtual)</span></span></div><div class="t m0 x18 hf ybe ff5 fs5 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ff11 fc0">f(</span>int<span class="_"> </span><span class="ff11 fc0">a)<span class="_ _12"> </span>{}</span></span></div><div class="t m0 x1 hf ybf ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf yc0 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ff11 fc6">:<span class="_ _12"> </span><span class="fc0">A<span class="_ _7"> </span>{</span></span></span></div><div class="t m0 x18 hf yc1 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="ff11 fc6">*<span class="_ _7"> </span><span class="fc0">array;</span></span></div><div class="t m0 x18 hf yc2 ff11 fs5 fc0 sc0 ls0 ws0">B()<span class="_ _30"> </span>{<span class="_ _7"> </span>array<span class="_ _12"> </span><span class="fc6">=<span class="_ _12"> </span><span class="ff5 fc5">new<span class="_"> </span><span class="fc4">int</span></span></span>[<span class="fc6">1000000</span>];<span class="_ _12"> </span>}</div><div class="t m0 x18 hf yc3 ff16 fs5 fc0 sc0 ls0 ws0"><span class="ff11">B()<span class="_ _7"> </span>{<span class="_ _12"> </span><span class="ff5 fc5">delete</span>[]<span class="_ _12"> </span>array;<span class="_ _31"> </span>}</span></div><div class="t m0 x1 hf yc4 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf yc5 ffd fs5 fc7 sc0 ls0 ws0">//----------------------------------------------------------------------</div><div class="t m0 x1 hf yc6 ff5 fs5 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ff11 fc3">destroy<span class="fc0">(A<span class="fc6">*<span class="_ _12"> </span></span>a)<span class="_ _7"> </span>{</span></span></div><div class="t m0 x18 hf yc7 ff5 fs5 fc5 sc0 ls0 ws0">delete<span class="_"> </span><span class="ff11 fc0">a;<span class="_ _32"> </span><span class="ffd fc7">//<span class="_ _7"> </span>call<span class="_ _12"> </span><span class="ff16"></span>A()</span></span></div><div class="t m0 x1 hf yc8 ff11 fs5 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hf yc9 ff11 fs5 fc0 sc0 ls0 ws0">B<span class="fc6">*<span class="_ _7"> </span></span>b<span class="_ _12"> </span><span class="fc6">=<span class="_ _12"> </span><span class="ff5 fc5">new<span class="_"> </span></span></span>B;</div><div class="t m0 x1 hf yca ff11 fs5 fc0 sc0 ls0 ws0">destroy(b);<span class="_ _7"> </span><span class="ffd fc7">//<span class="_ _12"> </span>without<span class="_ _7"> </span>virtual,<span class="_ _12"> </span><span class="ff16"></span>B()<span class="_ _7"> </span>is<span class="_ _12"> </span>not<span class="_ _12"> </span>called</span></div><div class="t m0 x19 hf ycb ffd fs5 fc7 sc0 ls0 ws0">//<span class="_ _7"> </span>destroy()<span class="_ _12"> </span>prints<span class="_ _7"> </span>only<span class="_ _12"> </span>&quot;A&quot;<span class="_ _7"> </span>-&gt;<span class="_ _12"> </span>huge<span class="_ _7"> </span>memory<span class="_ _12"> </span>leak!!</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">20/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf17" class="pf w0 h0" data-page-no="17"><div class="pc pc17 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4YtcsArOIFZOIGItuJlLOI6FQ7iB1XGVaWJnKycI/8nzTBC+NC9/2uwOHQAAhHG/XRdWAAAgGpEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAMBbqrVaAQCAOHLOLqkAAIQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAAPion9Fbx3H0YQAA3ymlzOi1LqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUEwAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAACZItVYrAAAQR87ZJRUAgHBEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAAD8mX44r60Av/M4XowAAJNs96eUVss2PLuutWYQAABCeAEx8xoCWiXZ0AAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Virtual<span class="_ _12"> </span>Metho<span class="_ _b"></span>ds<span class="_ _12"> </span><span class="fs4">(Common<span class="_ _7"> </span>Erro<span class="_ _3"></span>r<span class="_ _e"> </span>2)</span></div><div class="t m0 x1 hc yba ff1 fs7 fc0 sc0 ls0 ws0">Do<span class="_ _7"> </span>not<span class="_ _7"> </span>call<span class="_ _7"> </span>virtual<span class="_ _7"> </span>methods<span class="_ _7"> </span>in<span class="_ _7"> </span>constructor<span class="_ _e"> </span>and<span class="_ _7"> </span>destructor</div><div class="t m0 xe hc ycc ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">Constructo<span class="_ _3"></span>r<span class="_ _14"> </span><span class="ff4">:<span class="_ _8"> </span>The<span class="_ _e"> </span>derived<span class="_ _e"> </span>class<span class="_ _e"> </span>is<span class="_ _e"> </span>not<span class="_ _e"> </span>ready<span class="_ _e"> </span>until<span class="_ _e"> </span>constructor<span class="_ _a"> </span>is<span class="_ _e"> </span>completed</span></span></div><div class="t m0 xe hc ycd ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">Destructo<span class="_ _3"></span>r<span class="_ _14"> </span><span class="ff4">:<span class="_ _8"> </span>The<span class="_ _e"> </span>derived<span class="_ _e"> </span>class<span class="_ _e"> </span>is<span class="_ _e"> </span>already<span class="_ _e"> </span>destroy<span class="_ _3"></span>ed</span></span></div><div class="t m0 x1 hd yce ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd ycf ffc fs8 fc0 sc0 ls0 ws0">A()<span class="_"> </span>{<span class="_"> </span>f();<span class="_"> </span>}<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>what<span class="_ _8"> </span>instance<span class="_ _c"> </span>is<span class="_ _12"> </span>called?<span class="_ _c"> </span>&quot;B&quot;<span class="_ _12"> </span>is<span class="_ _c"> </span>not<span class="_ _12"> </span>ready</span></div><div class="t m0 x1a hd yd0 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>it<span class="_ _8"> </span>calls<span class="_ _c"> </span>A::f(),<span class="_ _12"> </span>even<span class="_ _c"> </span>though<span class="_ _12"> </span>A::f()<span class="_ _c"> </span>is<span class="_ _12"> </span>virtual</div><div class="t m0 x11 hd yd1 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc0">f()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;Explosion&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd yd2 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yd3 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd yd4 ffc fs8 fc0 sc0 ls0 ws0">B()<span class="_"> </span><span class="fc6">=<span class="_"> </span><span class="ff5 fc5">default</span></span>;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>call<span class="_ _8"> </span>A().<span class="_ _c"> </span>Note:<span class="_ _12"> </span>A()<span class="_ _c"> </span>may<span class="_ _12"> </span>be<span class="_ _c"> </span>also<span class="_ _12"> </span>implicit</span></div><div class="t m0 x11 hd yd5 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;Safe&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd yd6 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yd7 ffc fs8 fc0 sc0 ls0 ws0">B<span class="_"> </span>b;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>call<span class="_ _8"> </span>B(),<span class="_ _c"> </span><span class="fca">print<span class="_ _12"> </span>&quot;Explosion&quot;,<span class="_ _c"> </span>not<span class="_ _12"> </span>&quot;Safe&quot;!!</span></span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">21/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf18" class="pf w0 h0" data-page-no="18"><div class="pc pc18 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIjUlEQVR42u3ZsQnCQACG0ZzksAoOYGllbSFirYhbuYe7WGjhBjZuYCUBxWtiIdgJIogXeW+AcPxpPu7CYDwtAAAgG8f9rmMFAAByI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAHgKKSUrAACQjxijm1QAALIjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAA8EppAnjT5XodzZff+/5huzEyADyElJIVAADIR4zRcz8AANkRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAyF3ZorPWde2HAQB8pqqqFp3WTSoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACLVBAAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgDAPwqnVd8K8HOn2doIAPAwnCxC6HWb860omqYxCAAAWbgDFQsf74GcBIoAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Virtual<span class="_ _12"> </span>Metho<span class="_ _b"></span>ds<span class="_ _12"> </span><span class="fs4">(Common<span class="_ _7"> </span>Erro<span class="_ _3"></span>r<span class="_ _e"> </span>3)</span></div><div class="t m0 x1 hc yd8 ff1 fs7 fc0 sc0 ls0 ws0">Do<span class="_ _7"> </span>not<span class="_ _7"> </span>use<span class="_ _7"> </span>default<span class="_ _7"> </span>pa<span class="_ _3"></span>rameters<span class="_ _7"> </span>in<span class="_ _7"> </span>virtual<span class="_ _7"> </span>metho<span class="_ _b"></span>ds</div><div class="t m0 x1 hc yd9 ff4 fs7 fc0 sc0 ls0 ws0">Default<span class="_ _e"> </span>pa<span class="_ _3"></span>rameters<span class="_ _e"> </span>are<span class="_ _a"> </span>not<span class="_ _e"> </span>inherited</div><div class="t m0 x1 hf yda ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf ydb ff5 fs5 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">(</span></span>int<span class="_"> </span><span class="ff11 fc0">i<span class="_ _12"> </span><span class="fc6">=<span class="_ _12"> </span>5</span>)<span class="_ _7"> </span>{<span class="_ _12"> </span>cout<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _7"> </span><span class="fc9">&quot;A::&quot;<span class="_ _12"> </span></span>&lt;&lt;<span class="_ _12"> </span></span>i<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _7"> </span><span class="fc9">&quot;</span></span></span><span class="fcc">\n<span class="ff11 fc9">&quot;<span class="fc0">;<span class="_ _12"> </span>}</span></span></span></span></div><div class="t m0 x18 hf ydc ff5 fs5 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ff11 fc3">g<span class="fc0">(</span></span>int<span class="_"> </span><span class="ff11 fc0">i<span class="_ _12"> </span><span class="fc6">=<span class="_ _12"> </span>5</span>)<span class="_ _7"> </span>{<span class="_ _12"> </span>cout<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _7"> </span><span class="fc9">&quot;A::&quot;<span class="_ _12"> </span></span>&lt;&lt;<span class="_ _12"> </span></span>i<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _7"> </span><span class="fc9">&quot;</span></span></span><span class="fcc">\n<span class="ff11 fc9">&quot;<span class="fc0">;<span class="_ _12"> </span>}</span></span></span></span></div><div class="t m0 x1 hf ydd ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf yde ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ff11 fc6">:<span class="_ _12"> </span><span class="fc0">A<span class="_ _7"> </span>{</span></span></span></div><div class="t m0 x18 hf ydf ff5 fs5 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">(</span></span>int<span class="_"> </span><span class="ff11 fc0">i<span class="_ _12"> </span><span class="fc6">=<span class="_ _7"> </span>3</span>)<span class="_ _12"> </span></span><span class="fc5">override<span class="_"> </span><span class="ff11 fc0">{<span class="_ _12"> </span>cout<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _7"> </span><span class="fc9">&quot;B::&quot;<span class="_ _12"> </span></span>&lt;&lt;<span class="_ _12"> </span></span>i<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _7"> </span><span class="fc9">&quot;</span></span></span><span class="fcc">\n<span class="ff11 fc9">&quot;<span class="fc0">;<span class="_ _12"> </span>}</span></span></span></span></div><div class="t m0 x18 hf ye0 ff5 fs5 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ff11 fc3">g<span class="fc0">(</span></span>int<span class="_"> </span><span class="ff11 fc0">i)<span class="_ _33"> </span></span><span class="fc5">override<span class="_"> </span><span class="ff11 fc0">{<span class="_ _12"> </span>cout<span class="_ _7"> </span><span class="fc6">&lt;&lt;<span class="_ _12"> </span><span class="fc9">&quot;B::&quot;<span class="_ _12"> </span></span>&lt;&lt;<span class="_ _7"> </span></span>i<span class="_ _12"> </span><span class="fc6">&lt;&lt;<span class="_ _12"> </span><span class="fc9">&quot;</span></span></span><span class="fcc">\n<span class="ff11 fc9">&quot;<span class="fc0">;<span class="_ _7"> </span>}</span></span></span></span></div><div class="t m0 x1 hf ye1 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf ye2 ff11 fs5 fc0 sc0 ls0 ws0">A<span class="_ _7"> </span>a;<span class="_ _12"> </span>B<span class="_ _12"> </span>b;</div><div class="t m0 x1 hf ye3 ff11 fs5 fc0 sc0 ls0 ws0">a.f();<span class="_ _33"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _7"> </span>print<span class="_ _12"> </span>&quot;A::5&quot;</span></div><div class="t m0 x1 hf ye4 ff11 fs5 fc0 sc0 ls0 ws0">b.f();<span class="_ _33"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _7"> </span>print<span class="_ _12"> </span>&quot;B::3&quot;</span></div><div class="t m0 x1 hf ye5 ff11 fs5 fc0 sc0 ls0 ws0">A<span class="fc6">&amp;<span class="_ _7"> </span></span>ab<span class="_ _12"> </span><span class="fc6">=<span class="_ _12"> </span></span>b;</div><div class="t m0 x1 hf ye6 ff11 fs5 fc0 sc0 ls0 ws0">ab.f();<span class="_ _32"> </span><span class="ffd fc7">//<span class="_ _7"> </span>!!!<span class="_ _12"> </span>print<span class="_ _7"> </span>&quot;B::5&quot;<span class="_ _26"> </span>//<span class="_ _7"> </span>the<span class="_ _12"> </span>virtual<span class="_ _7"> </span>table<span class="_ _12"> </span>of<span class="_ _12"> </span>A</span></div><div class="t m0 x1b hf ye7 ffd fs5 fc7 sc0 ls0 ws0">//<span class="_ _7"> </span>contains<span class="_ _12"> </span>f(int<span class="_ _7"> </span>i<span class="_ _12"> </span>=<span class="_ _7"> </span>5)<span class="_ _12"> </span>and</div><div class="t m0 x1 hf ye8 ff11 fs5 fc0 sc0 ls0 ws0">ab.g();<span class="_ _32"> </span><span class="ffd fc7">//<span class="_ _7"> </span>!!!<span class="_ _12"> </span>print<span class="_ _7"> </span>&quot;B::5&quot;<span class="_ _26"> </span>//<span class="_ _7"> </span>g(int<span class="_ _12"> </span>i<span class="_ _7"> </span>=<span class="_ _12"> </span>5)<span class="_ _12"> </span>but<span class="_ _7"> </span>it<span class="_ _12"> </span>points</span></div><div class="t m0 x1b hf ye9 ffd fs5 fc7 sc0 ls0 ws0">//<span class="_ _7"> </span>to<span class="_ _12"> </span>B<span class="_ _7"> </span>implementations</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">22/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf19" class="pf w0 h0" data-page-no="19"><div class="pc pc19 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Pure<span class="_ _12"> </span>Virtual<span class="_ _12"> </span>Metho<span class="_ _b"></span>d<span class="_ _34"> </span>1/2</div><div class="t m0 xd hc yea ff1 fs7 fc1 sc0 ls0 ws0">Pure<span class="_ _7"> </span>Virtual<span class="_ _7"> </span>Metho<span class="_ _b"></span>d</div><div class="t m0 xd hc yeb ff4 fs7 fc0 sc0 ls0 ws0">A<span class="_ _e"> </span><span class="ff1">pure<span class="_ _7"> </span>virtual<span class="_ _7"> </span>metho<span class="_ _b"></span>d<span class="_ _e"> </span></span>is<span class="_ _e"> </span>a<span class="_ _e"> </span>function<span class="_ _e"> </span>that<span class="_ _e"> </span>must<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>implemented<span class="_ _e"> </span>in<span class="_ _e"> </span>derived<span class="_ _e"> </span>classes</div><div class="t m0 xd hc yec ff4 fs7 fc0 sc0 ls0 ws0">(concrete<span class="_ _e"> </span>implementation)</div><div class="t m0 x1 hc yed ff4 fs7 fc0 sc0 ls0 ws0">Pure<span class="_ _e"> </span>virtual<span class="_ _e"> </span>functions<span class="_ _e"> </span>can<span class="_ _e"> </span>have<span class="_ _e"> </span>or<span class="_ _a"> </span>not<span class="_ _e"> </span>have<span class="_ _e"> </span>a<span class="_ _e"> </span>b<span class="_ _b"></span>o<span class="_ _b"></span>dy</div><div class="t m0 x1 hd yee ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd yef ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span><span class="fc6">=<span class="_"> </span>0</span>;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>pure<span class="_ _8"> </span>virtual<span class="_ _c"> </span>without<span class="_ _12"> </span>body</span></span></span></span></div><div class="t m0 x11 hd yf0 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">g<span class="fc0">()<span class="_"> </span><span class="fc6">=<span class="_"> </span>0</span>;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>pure<span class="_ _8"> </span>virtual<span class="_ _c"> </span>with<span class="_ _12"> </span>body</span></span></span></span></div><div class="t m0 x1 hd yf1 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yf2 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">A::g<span class="fc0">()<span class="_"> </span>{}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>pure<span class="_ _8"> </span>virtual<span class="_ _c"> </span>implementation<span class="_ _12"> </span>(body)<span class="_ _c"> </span>for<span class="_ _12"> </span>g()</span></span></span></div><div class="t m0 x1 hd yf3 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd yf4 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>must<span class="_ _8"> </span>be<span class="_ _c"> </span>implemented</span></span></span></div><div class="t m0 x11 hd yf5 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">g<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>must<span class="_ _8"> </span>be<span class="_ _c"> </span>implemented</span></span></span></div><div class="t m0 x1 hd yf6 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">23/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1a" class="pf w0 h0" data-page-no="1a"><div class="pc pc1a w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4UQuWB3OIFZOIGIt3GYu4TgWDuEGVsdVpomdAwjCf+fzTBC+NC9/3h1OCQAAwnjcbysrAAAQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOAj11qtAABAHKUUl1QAAMIRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAAfqeb0VunafJhAADf6ft+Rq91SQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKSaAAAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgDwB3Kt1QoAAMRRSnFJBQAgHJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQCApevGy9YKsEjP89UIAMzR/jjkvFm38ZVSa80gAACE8AaSSxoCoNvikAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Pure<span class="_ _12"> </span>Virtual<span class="_ _12"> </span>Metho<span class="_ _b"></span>d<span class="_ _34"> </span>2/2</div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">A<span class="_ _e"> </span>class<span class="_ _e"> </span>with<span class="_ _e"> </span>one<span class="_ _e"> </span><span class="ff9">pure<span class="_ _e"> </span>virtual<span class="_ _e"> </span>function<span class="_ _7"> </span></span>cannot<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>instantiated</div><div class="t m0 x1 hd yf7 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd yf8 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span><span class="fc6">=<span class="_"> </span>0</span>;</span></span></span></div><div class="t m0 x1 hd yf9 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yfa ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B1<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x1 hd yfb ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _1e"> </span>virtual<span class="_ _8"> </span>void<span class="_ _8"> </span>f()<span class="_ _c"> </span>=<span class="_ _12"> </span>0;<span class="_ _c"> </span>//<span class="_ _12"> </span>implicitly<span class="_ _c"> </span>declared</div><div class="t m0 x1 hd yfc ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yfd ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B2<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd yfe ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{}</span></span></div><div class="t m0 x1 hd yff ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y100 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>A<span class="_ _1e"> </span>a;<span class="_ _1e"> </span>//<span class="_ _8"> </span>&quot;A&quot;<span class="_ _1e"> </span>has<span class="_ _c"> </span>a<span class="_ _12"> </span>pure<span class="_ _c"> </span>virtual<span class="_ _12"> </span>method</div><div class="t m0 x1 hd y101 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>B1<span class="_ _8"> </span>b1;<span class="_ _c"> </span>//<span class="_ _12"> </span>&quot;B1&quot;<span class="_ _c"> </span>has<span class="_ _12"> </span>a<span class="_ _c"> </span>pure<span class="_ _12"> </span>virtual<span class="_ _c"> </span>method</div><div class="t m0 x1 hd y102 ffc fs8 fc0 sc0 ls0 ws0">B2<span class="_"> </span>b2;<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _1e"> </span>ok</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">24/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1b" class="pf w0 h0" data-page-no="1b"><div class="pc pc1b w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Abstract<span class="_ _12"> </span>Class<span class="_ _12"> </span>and<span class="_ _12"> </span>Interface</div><div class="t m0 xe hc y58 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">A<span class="_ _a"> </span>class<span class="_ _e"> </span>is<span class="_ _a"> </span><span class="ff1">interface<span class="_ _e"> </span></span>if<span class="_ _a"> </span>it<span class="_ _e"> </span>has<span class="_ _a"> </span>only<span class="_ _e"> </span><span class="ff9">pure<span class="_ _a"> </span>virtual<span class="_ _8"> </span></span>functions<span class="_ _a"> </span>and<span class="_ _e"> </span>optionally<span class="_ _a"> </span>(<span class="ff9">suggested<span class="_ _f"></span></span>)</span></div><div class="t m0 x7 hc y103 ff4 fs7 fc0 sc0 ls0 ws0">a<span class="_ _e"> </span>virtual<span class="_ _e"> </span>destructo<span class="_ _3"></span>r.<span class="_ _c"> </span>Interfaces<span class="_ _a"> </span>do<span class="_ _7"> </span>not<span class="_ _a"> </span>have<span class="_ _e"> </span>implementation<span class="_ _e"> </span>or<span class="_ _a"> </span>data</div><div class="t m0 xe hc y104 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">A<span class="_ _e"> </span>class<span class="_ _e"> </span>is<span class="_ _e"> </span><span class="ff1">abstract<span class="_ _e"> </span></span>if<span class="_ _e"> </span>it<span class="_ _e"> </span>has<span class="_ _e"> </span>at<span class="_ _e"> </span>least<span class="_ _e"> </span>one<span class="_ _e"> </span><span class="ff9">pure<span class="_ _e"> </span>virtual<span class="_ _c"> </span></span>function</span></div><div class="t m0 x1 h10 y105 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="ff12">INTERF<span class="_ _3"></span>A<span class="_ _3"></span>CE</span></span></span></span></div><div class="t m0 x11 hd y106 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="ff14 fc0"><span class="ffc">A();<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>to<span class="_ _8"> </span>implement</span></span></span></div><div class="t m0 x11 hd y107 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span><span class="fc6">=<span class="_"> </span>0</span>;</span></span></span></div><div class="t m0 x1 hd y108 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 h10 y109 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc0">{<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="ff12">ABSTRACT<span class="_ _10"> </span>CLASS</span></span></span></span></div><div class="t m0 x11 hd y10a ffc fs8 fc0 sc0 ls0 ws0">B()<span class="_"> </span>{}<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>abstract<span class="_ _8"> </span>classes<span class="_ _c"> </span>may<span class="_ _12"> </span>have<span class="_ _c"> </span>a<span class="_ _12"> </span>contructor</span></div><div class="t m0 x11 hd y10b ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc0">g()<span class="_"> </span><span class="fc6">=<span class="_"> </span>0</span>;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>at<span class="_ _8"> </span>least<span class="_ _c"> </span>one<span class="_ _12"> </span>pure<span class="_ _c"> </span>virtual</span></span></span></div><div class="t m0 x1 hd y10c ff5 fs8 fc5 sc0 ls0 ws0">protected<span class="ffc fc6">:</span></div><div class="t m0 x11 hd y10d ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x;<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>additional<span class="_ _8"> </span>data</span></span></div><div class="t m0 x1 hd y10e ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">25/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1c" class="pf w0 h0" data-page-no="1c"><div class="pc pc1c w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xc h2 y10f ff1 fs0 fc0 sc0 ls0 ws0">Inheritance<span class="_ _1"> </span>Casting</div><div class="t m0 xc h2 y2b ff1 fs0 fc0 sc0 ls0 ws0">and<span class="_ _1"> </span>R<span class="_ _5"></span>un-time<span class="_ _1"> </span>T<span class="_ _35"></span>yp<span class="_ _0"></span>e</div><div class="t m0 xc h2 y110 ff1 fs0 fc0 sc0 ls0 ws0">Identification</div><div class="t m0 x1c h13 y111 ff6 fs1 fc0 sc0 ls0 ws0"></div><a class="l" href="#pf1c" data-dest-detail='[28,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:166.803000px;width:241.993000px;height:24.026000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf1c" data-dest-detail='[28,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:132.432000px;width:241.993000px;height:24.026000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf1c" data-dest-detail='[28,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:102.881000px;width:179.677000px;height:25.291000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1d" class="pf w0 h0" data-page-no="1d"><div class="pc pc1d w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Hiera<span class="_ _3"></span>rchy<span class="_ _12"> </span>Casting</div><div class="t m0 x1 hc yba ff1 fs7 fc0 sc0 ls0 ws0">Class-casting<span class="_ _e"> </span><span class="ff4">allows<span class="_ _a"> </span>implicit<span class="_ _e"> </span>or<span class="_ _a"> </span>explicit<span class="_ _e"> </span>conversion<span class="_ _e"> </span>of<span class="_ _e"> </span>a<span class="_ _e"> </span>class<span class="_ _7"> </span>into<span class="_ _a"> </span>another<span class="_ _e"> </span>one<span class="_ _e"> </span>across</span></div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">its<span class="_ _e"> </span>hiera<span class="_ _3"></span>rchy</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">26/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1e" class="pf w0 h0" data-page-no="1e"><div class="pc pc1e w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Hiera<span class="_ _3"></span>rchy<span class="_ _12"> </span>Casting</div><div class="t m0 xd hc y58 ff15 fs7 fc0 sc0 ls0 ws0">Up<span class="_ _b"></span>casting<span class="_ _22"> </span><span class="ff4">Conversion<span class="_ _e"> </span>b<span class="_ _b"></span>etw<span class="_ _3"></span>een<span class="_ _e"> </span>a<span class="_ _e"> </span>derived<span class="_ _e"> </span>class<span class="_ _e"> </span>reference<span class="_ _e"> </span>or<span class="_ _a"> </span>p<span class="_ _b"></span>ointer<span class="_ _e"> </span>to<span class="_ _e"> </span>a<span class="_ _e"> </span>base<span class="_ _e"> </span>class</span></div><div class="t m0 x1d h6 y112 ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _6"> </span>It<span class="_ _a"> </span>can<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _a"> </span><span class="ff9">implicit<span class="_ _7"> </span></span>or<span class="_ _a"> </span><span class="ff9">explicit</span></div><div class="t m0 x1d h6 y113 ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _6"> </span>It<span class="_ _a"> </span>is<span class="_ _a"> </span>safe</div><div class="t m0 x1d h6 y114 ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _26"> </span><span class="ffb">static_cast<span class="_ _22"> </span></span>o<span class="_ _3"></span>r<span class="_ _22"> </span><span class="ffb">dynamic_cast<span class="_ _23"> </span></span>//<span class="_ _a"> </span>see<span class="_ _a"> </span>next<span class="_ _a"> </span>slides</div><div class="t m0 x1e hc y115 ff15 fs7 fc0 sc0 ls0 ws0">Do<span class="_ _3"></span>wncasting<span class="_ _22"> </span><span class="ff4">Conversion<span class="_ _e"> </span>b<span class="_ _b"></span>etw<span class="_ _3"></span>een<span class="_ _e"> </span>a<span class="_ _e"> </span>base<span class="_ _e"> </span>class<span class="_ _e"> </span>reference<span class="_ _e"> </span>or<span class="_ _a"> </span>p<span class="_ _b"></span>ointer<span class="_ _e"> </span>to<span class="_ _e"> </span>a<span class="_ _e"> </span>derived<span class="_ _e"> </span>class</span></div><div class="t m0 x1d h6 y116 ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _6"> </span>It<span class="_ _a"> </span>is<span class="_ _a"> </span>only<span class="_ _a"> </span><span class="ff9">explicit</span></div><div class="t m0 x1d h6 y117 ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _6"> </span>It<span class="_ _a"> </span>can<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _a"> </span>dangerous</div><div class="t m0 x1d h6 y118 ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _26"> </span><span class="ffb">static_cast<span class="_ _22"> </span></span>o<span class="_ _3"></span>r<span class="_ _22"> </span><span class="ffb">dynamic_cast</span></div><div class="t m0 x1f hc y119 ff15 fs7 fc0 sc0 ls0 ws0">Sidecasting<span class="_ _22"> </span><span class="ff4">(<span class="ff9">Cross-cast<span class="_ _0"></span></span>)<span class="_ _e"> </span>Conversion<span class="_ _e"> </span>b<span class="_ _b"></span>etw<span class="_ _3"></span>een<span class="_ _e"> </span>a<span class="_ _e"> </span>class<span class="_ _e"> </span>reference<span class="_ _e"> </span>or<span class="_ _a"> </span>p<span class="_ _b"></span>ointer<span class="_ _e"> </span>to<span class="_ _e"> </span>another</span></div><div class="t m0 x20 hc y11a ff4 fs7 fc0 sc0 ls0 ws0">class<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span>same<span class="_ _e"> </span>hiera<span class="_ _3"></span>rchy<span class="_ _e"> </span>level</div><div class="t m0 x1d h6 y11b ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _6"> </span>It<span class="_ _a"> </span>is<span class="_ _a"> </span>only<span class="_ _a"> </span><span class="ff9">explicit</span></div><div class="t m0 x1d h6 y11c ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _6"> </span>It<span class="_ _a"> </span>can<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _a"> </span>dangerous</div><div class="t m0 x1d h6 y11d ff4 fs4 fc0 sc0 ls0 ws0">-<span class="_ _26"> </span><span class="ffb">dynamic_cast</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">27/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf1f" class="pf w0 h0" data-page-no="1f"><div class="pc pc1f w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAI/UlEQVR42u3ZsWkcQRTH4RuzD0eDahCKVIExjg0OD1TKFqFoUQMq4opQ4CLcgSMxkR/4VpkCZVo4aebu+yp4/HeDH7vl5tuPHQAAdOPP76cvVgAAoDciFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQCAVyUzrQAAQD8iwpdUAAC6I1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAMLppoFtbax4YAMA2tdaBrvUlFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkWoCAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAzt1kAhjU/+Px7uHhwkc4zLM3AeAslcwc5dbWmgcGALBNrXWUUyPC734AALojUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAl2wyAcBw9sty4Qsc5tlrAOetZOYot7bWPDAAgG1qraOcGhF+9wMA0B2RCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAATmsyAcBw9stihG0O82wEGELJzFFuba15YAAA29RaRzk1IvzuBwCgOyIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEA4ANNJgCA/bIYYZvDPBuBUyiZOcqtrTUPDABgm1rrKKdGhN/9AAB0R6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAAO9SMtMKAAD0IyJ8SQUAoDsiFQAAkQoAACIVAACRCgAAIhUAgLMzPd9fWwH4LH9/PhoBgDduv/8q5err+vxvt1vX1SAAAHThBTj+QPpl5z1kAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Up<span class="_ _b"></span>casting<span class="_ _12"> </span>and<span class="_ _12"> </span>Downcasting<span class="_ _7"> </span>Example</div><div class="t m0 x1 hd y11e ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x13 hd y11f ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y120 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y121 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x13 hd y122 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">var<span class="_"> </span><span class="fc6">=<span class="_"> </span>3</span>;</span></div><div class="t m0 x13 hd y23 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y123 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y124 ffc fs8 fc0 sc0 ls0 ws0">A<span class="_ _1e"> </span>a;</div><div class="t m0 x1 hd y125 ffc fs8 fc0 sc0 ls0 ws0">B<span class="_ _1e"> </span>b;</div><div class="t m0 x1 hd y126 ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">&amp;<span class="_"> </span></span>a1<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>b;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>implicit<span class="_ _8"> </span>cast<span class="_ _c"> </span>upcasting</span></div><div class="t m0 x1 hd y127 ff5 fs8 fc5 sc0 ls0 ws0">static_cast<span class="ffc fc6">&lt;<span class="fc0">A</span>&amp;&gt;<span class="fc0">(b).f();<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;B&quot;<span class="_ _c"> </span>upcasting</span></span></span></div><div class="t m0 x1 hd y128 ff5 fs8 fc5 sc0 ls0 ws0">static_cast<span class="ffc fc6">&lt;<span class="fc0">B</span>&amp;&gt;<span class="fc0">(a).f();<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;A&quot;<span class="_ _c"> </span>downcasting</span></span></span></div><div class="t m0 x1 hd y129 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>b.var;<span class="_ _2c"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>3<span class="_ _c"> </span>(no<span class="_ _12"> </span>cast)</span></div><div class="t m0 x1 hd y12a ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="ff5 fc5">static_cast</span>&lt;</span>B<span class="fc6">&amp;&gt;</span>(a).var;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="fca">potential<span class="_ _8"> </span>segfault!!!<span class="_ _c"> </span></span>downcasting</span></div><div class="t m0 x21 hd y12b ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>&quot;var&quot;<span class="_ _8"> </span>does<span class="_ _c"> </span>not<span class="_ _12"> </span>exist<span class="_ _c"> </span>in<span class="_ _12"> </span>&quot;A&quot;</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">28/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf20" class="pf w0 h0" data-page-no="20"><div class="pc pc20 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAI4ElEQVR42u3asU3DQBiG4RzyierEDIiKCRCiRkqJlFE8BFXkBRjCQ1AwBBtQRVdxUmw6mhQgR0F35Hkm+PW5eWU73Nw9rAAAoBrvb68XVgAAoDYiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQCAb6GUYgUAAOoRY/QmFQCA6ohUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAALSua+jWnLMHBgCwTEqpoWu9SQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKSaAAAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAA6tSZADjefpo2w2CHBca+NwLAoVBKaeXWnLMHBgCwTEqplVNjjD73AwBQHZEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABOqzMBcLz9NG2GwQ4LjH1vBIBDoZTSyq05Zw8MAGCZlFIrp8YYfe4HAKA6IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAJxWZwLgl562WyP8sbHvjQCcp1BKaeXWnLMHBgCwTEqplVNjjD73AwBQHZEKAIBIBQCAn7T0TyoAAOfAP6kAANRIpAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQCA/63bPV9bAajfx+OLEQDOxO39OoSry3n3uVrN82wQAACq8AWpFDr8epUoxwAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Sidecasting<span class="_ _12"> </span>Example</div><div class="t m0 x1 hd y11e ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x13 hd y11f ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y120 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y122 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B1<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x13 hd y23 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B1&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y123 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y12c ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B2<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x13 hd y124 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B2&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y125 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y12d ffc fs8 fc0 sc0 ls0 ws0">B1<span class="_"> </span>b1;</div><div class="t m0 x1 hd y127 ffc fs8 fc0 sc0 ls0 ws0">B2<span class="_"> </span>b2;</div><div class="t m0 x1 hd y128 ff5 fs8 fc5 sc0 ls0 ws0">dynamic_cast<span class="ffc fc6">&lt;<span class="fc0">B2</span>&amp;&gt;<span class="fc0">(b1).f();<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span>sidecasting,<span class="_ _8"> </span>throw<span class="_ _c"> </span><span class="fff">std::bad_cast</span></span></span></span></div><div class="t m0 x1 hd y129 ff5 fs8 fc5 sc0 ls0 ws0">dynamic_cast<span class="ffc fc6">&lt;<span class="fc0">B1</span>&amp;&gt;<span class="fc0">(b2).f();<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span>sidecasting,<span class="_ _8"> </span>throw<span class="_ _c"> </span><span class="fff">std::bad_cast</span></span></span></span></div><div class="t m0 x1 hd y12a ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>static_cast&lt;B1<span class="fff">&amp;</span>&gt;(b2).f();<span class="_ _8"> </span>//<span class="_ _c"> </span>compile<span class="_ _12"> </span>error</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">29/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf21" class="pf w0 h0" data-page-no="21"><div class="pc pc21 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">R<span class="_ _3"></span>un-time<span class="_ _12"> </span>T<span class="_ _5"></span>yp<span class="_ _b"></span>e<span class="_ _12"> </span>Identification</div><div class="t m0 xd hc y12e ff1 fs7 fc1 sc0 ls0 ws0">RTTI</div><div class="t m0 xd hc y12f ff1 fs7 fc0 sc0 ls0 ws0">R<span class="_ _3"></span>un-Time<span class="_ _7"> </span>T<span class="_ _5"></span>yp<span class="_ _b"></span>e<span class="_ _7"> </span>Info<span class="_ _3"></span>rmation<span class="_ _e"> </span><span class="ff4">(</span>RTTI<span class="ff4">)<span class="_ _e"> </span>is<span class="_ _e"> </span>a<span class="_ _a"> </span>mechanism<span class="_ _e"> </span>that<span class="_ _e"> </span>allows<span class="_ _a"> </span>the<span class="_ _e"> </span>t<span class="_ _3"></span>yp<span class="_ _b"></span>e<span class="_ _e"> </span>of<span class="_ _e"> </span>object</span></div><div class="t m0 xd hc y130 ff4 fs7 fc0 sc0 ls0 ws0">to<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span><span class="ff9">determined<span class="_ _e"> </span>at<span class="_ _e"> </span>runtime</span></div><div class="t m0 x1 hc y131 ff4 fs7 fc0 sc0 ls0 ws0">C++<span class="_ _e"> </span>exp<span class="_ _3"></span>resses<span class="_ _e"> </span>RTTI<span class="_ _e"> </span>through<span class="_ _e"> </span>three<span class="_ _e"> </span>features:</div><div class="t m0 xe hc y132 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ffb fc3">dynamic_cast<span class="_ _e"> </span></span><span class="ff4">k<span class="_ _3"></span>eywo<span class="_ _3"></span>rd:<span class="_ _c"> </span>conversion<span class="_ _a"> </span>of<span class="_ _e"> </span>p<span class="_ _b"></span>olymorphic<span class="_ _a"> </span>types</span></div><div class="t m0 xe hc y133 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ffb fc3">typeid<span class="_ _e"> </span></span><span class="ff4">k<span class="_ _3"></span>eywo<span class="_ _3"></span>rd:<span class="_ _c"> </span>identifying<span class="_ _a"> </span>the<span class="_ _e"> </span>exact<span class="_ _e"> </span>type<span class="_ _e"> </span>of<span class="_ _e"> </span>object</span></div><div class="t m0 xe hc y134 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ffb fc3">type_info<span class="_ _e"> </span></span><span class="ff4">class:<span class="_ _c"> </span>t<span class="_ _3"></span>yp<span class="_ _b"></span>e<span class="_ _e"> </span>info<span class="_ _3"></span>rmation<span class="_ _e"> </span>returned<span class="_ _e"> </span>by<span class="_ _a"> </span>the<span class="_ _21"> </span><span class="ffb">typeid<span class="_ _22"> </span></span>op<span class="_ _b"></span>erator</span></div><div class="t m0 x1 hc y135 ff4 fs7 fc0 sc0 ls0 ws0">RTTI<span class="_ _a"> </span>is<span class="_ _e"> </span>available<span class="_ _e"> </span>only<span class="_ _a"> </span>for<span class="_ _a"> </span>classes<span class="_ _e"> </span>that<span class="_ _e"> </span>a<span class="_ _3"></span>re<span class="_ _e"> </span><span class="ff9">p<span class="_ _b"></span>olymorphic</span>,<span class="_ _a"> </span>which<span class="_ _a"> </span>means<span class="_ _e"> </span>they<span class="_ _e"> </span>have<span class="_ _a"> </span><span class="ff9">at<span class="_ _e"> </span>least</span></div><div class="t m0 x1 hc y136 ff9 fs7 fc0 sc0 ls0 ws0">one<span class="_ _7"> </span><span class="ff4">virtual<span class="_ _e"> </span>metho<span class="_ _b"></span>d</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">30/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf22" class="pf w0 h0" data-page-no="22"><div class="pc pc22 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIoUlEQVR42u3YsU3EQBCGUS/yimhEDSciKkCIGOk6ownKIbgi6IDotBGTmASRAidhjeX3KrD/TT5Nu71/nAAAoIy30+uVFQAAqEakAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAADwrWWmFQAAqKP37pIKAEA5IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAPyv2QTAOsYYe/vliPDuAJdxSQUAoJwtXVJ3eIZZh2MPAFCNSyoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQCobTYBsI6IMAIAv+SSCgCASAUAgJ+0zLQCAAB19N5dUgEAKEekAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAMDK5g196xjDgwEAXCYiNvS1LqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUEwAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAP6gZaYVAACoo/fukgoAQDkiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAL7M5+eDFYAden96MQJATXcPx9ZurpfzxzQty2IQAABK+AR59CMrzM1NhAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff5 fs3 fc1 sc0 ls0 ws0">type_info<span class="_ _12"> </span><span class="ff1">and<span class="_ _12"> </span></span>typeid</div><div class="t m0 xd hc y137 ffb fs7 fc0 sc0 ls0 ws0">type_info<span class="_ _22"> </span><span class="ff4">class<span class="_ _e"> </span>has<span class="_ _e"> </span>the<span class="_ _e"> </span>metho<span class="_ _b"></span>d<span class="_ _21"> </span></span>name()<span class="_ _22"> </span><span class="ff4">which<span class="_ _e"> </span>returns<span class="_ _e"> </span>the<span class="_ _e"> </span>name<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span>type</span></div><div class="t m0 x1 hd y138 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x13 hd y139 ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{}</span></span></span></div><div class="t m0 x1 hd y13a ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y13b ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{};</span></span></span></div><div class="t m0 x1 hd y13c ffc fs8 fc0 sc0 ls0 ws0">A<span class="_ _1e"> </span>a;</div><div class="t m0 x1 hd y13d ffc fs8 fc0 sc0 ls0 ws0">B<span class="_ _1e"> </span>b;</div><div class="t m0 x1 hd y13e ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">&amp;<span class="_"> </span></span>a1<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>b;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>implicit<span class="_ _8"> </span>upcasting</span></div><div class="t m0 x1 hd y13f ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="ff5 fc5">typeid</span></span>(a).name();<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;1A&quot;</span></div><div class="t m0 x1 hd y140 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="ff5 fc5">typeid</span></span>(b).name();<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;1B&quot;</span></div><div class="t m0 x1 hd y141 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="ff5 fc5">typeid</span></span>(a1).name();<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;1B&quot;</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">31/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf23" class="pf w0 h0" data-page-no="23"><div class="pc pc23 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h14 y8 ff5 fs3 fc1 sc0 ls0 ws0">dynamic_cast</div><div class="t m0 xd hc yba ff5 fs7 fc0 sc0 ls0 ws0">dynamic_cast<span class="_ _10"> </span><span class="ff4">,<span class="_ _e"> </span>differently<span class="_ _e"> </span>from<span class="_ _21"> </span><span class="ffb">static_cast<span class="_ _10"> </span></span>,<span class="_ _e"> </span>uses<span class="_ _e"> </span><span class="ff9">RTTI<span class="_ _8"> </span></span>fo<span class="_ _3"></span>r<span class="_ _e"> </span>deducing<span class="_ _e"> </span>the</span></div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">co<span class="_ _3"></span>rrectness<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span>output<span class="_ _e"> </span>type</div><div class="t m0 x1 hc y142 ff4 fs7 fc0 sc0 ls0 ws0">This<span class="_ _e"> </span>op<span class="_ _b"></span>eration<span class="_ _e"> </span>happ<span class="_ _b"></span>ens<span class="_ _e"> </span>at<span class="_ _e"> </span>run-time<span class="_ _e"> </span>and<span class="_ _e"> </span>it<span class="_ _e"> </span>is<span class="_ _e"> </span>exp<span class="_ _b"></span>ensive</div><div class="t m0 xd hc y143 ff5 fs7 fc0 sc0 ls0 ws0">dynamic_cast&lt;New&gt;(Obj)<span class="_ _22"> </span><span class="ff4">has<span class="_ _e"> </span>the<span class="_ _e"> </span>following<span class="_ _a"> </span>properties:</span></div><div class="t m0 xe hc y144 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Convert<span class="_ _e"> </span>b<span class="_ _b"></span>etw<span class="_ _3"></span>een<span class="_ _a"> </span>a<span class="_ _e"> </span>derived<span class="_ _7"> </span>class<span class="_ _22"> </span><span class="ffb">Obj<span class="_ _22"> </span></span>to<span class="_ _e"> </span>a<span class="_ _e"> </span>base<span class="_ _e"> </span>class<span class="_ _21"> </span><span class="ffb">New<span class="_ _22"> </span><span class="ff17"><span class="_ _e"> </span><span class="ff9">up<span class="_ _b"></span>casting</span></span></span>.</span></div><div class="t m0 x22 hc y145 ffb fs7 fc0 sc0 ls0 ws0">New/Obj<span class="_ _22"> </span><span class="ff4">are<span class="_ _a"> </span>b<span class="_ _b"></span>oth<span class="_ _e"> </span>p<span class="_ _b"></span>ointers<span class="_ _e"> </span>or<span class="_ _a"> </span>references</span></div><div class="t m0 xe hc y146 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Thro<span class="_ _3"></span>w<span class="_ _21"> </span><span class="ffb">std::bad_cast<span class="_ _22"> </span></span>if<span class="_ _21"> </span><span class="ffb">New/Obj<span class="_ _22"> </span></span>are<span class="_ _a"> </span><span class="ff9">references<span class="_ _8"> </span></span>and<span class="_ _22"> </span><span class="ffb">New/Obj<span class="_ _21"> </span></span>cannot<span class="_ _e"> </span>b<span class="_ _b"></span>e</span></div><div class="t m0 x7 hc y147 ff4 fs7 fc0 sc0 ls0 ws0">converted</div><div class="t m0 xe hc y148 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Returns<span class="_ _22"> </span><span class="ffb">NULL<span class="_ _21"> </span></span>if<span class="_ _22"> </span><span class="ffb">New/Obj<span class="_ _21"> </span></span>a<span class="_ _3"></span>re<span class="_ _e"> </span><span class="ff9">p<span class="_ _b"></span>ointers<span class="_ _8"> </span></span>and<span class="_ _22"> </span><span class="ffb">New/Obj<span class="_ _21"> </span></span>cannot<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>converted</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">32/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf24" class="pf w0 h0" data-page-no="24"><div class="pc pc24 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff5 fs3 fc1 sc0 ls0 ws0">dynamic_cast<span class="_ _12"> </span><span class="ff1">Example<span class="_ _12"> </span>1</span></div><div class="t m0 x1 hd y149 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x13 hd y14a ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y14b ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y14c ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x13 hd y14d ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y14e ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y14f ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>a;</div><div class="t m0 x1 hd y150 ffc fs8 fc0 sc0 ls0 ws0">B<span class="_"> </span>b;</div><div class="t m0 x1 hd y151 ff5 fs8 fc5 sc0 ls0 ws0">dynamic_cast<span class="ffc fc6">&lt;<span class="fc0">A</span>&amp;&gt;<span class="fc0">(b).f();<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;B&quot;<span class="_ _c"> </span>upcasting</span></span></span></div><div class="t m0 x1 hd y152 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>dynamic_cast&lt;B<span class="fff">&amp;</span>&gt;(a).f();<span class="_ _8"> </span>//<span class="_ _c"> </span>throw<span class="_ _12"> </span><span class="fff">std::bad_cast</span></div><div class="t m0 x23 hd y153 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>wrong<span class="_ _8"> </span>downcasting</div><div class="t m0 x1 hd y154 ff5 fs8 fc5 sc0 ls0 ws0">dynamic_cast<span class="ffc fc6">&lt;<span class="fc0">B</span>*&gt;<span class="fc0">(</span>&amp;<span class="fc0">a);<span class="_ _17"> </span><span class="ffd fc7">//<span class="_ _c"> </span>returns<span class="_ _12"> </span><span class="fff">nullptr</span></span></span></span></div><div class="t m0 x23 hd y155 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>wrong<span class="_ _8"> </span>downcasting</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">33/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf25" class="pf w0 h0" data-page-no="25"><div class="pc pc25 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIoUlEQVR42u3ZsU0DQRCG0Vt0K6IVNSAiKkCIGMkl0IeLIHdMERRBQBF0QGRtAuPgyAgdnJCZtd6rYPRf8mmv3Nw9TAAAkMbH+9uFFQAAyEakAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAADwq0SEFQAAyKPW6iUVAIB0RCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARjcPdGvv3QcDAFintTbQtV5SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqSYAAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAICcZhMA/+jrcHja7eywwut2awTgjJWIGOXW3rsPBgCwTmttlFNrrX73AwCQjkgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAgD9SIsIKAADkUWv1kgoAQDoiFQAAkQoAACIVAACRCgAAIhUAgLMz75+vrQBwSp+PL0YAOOL2flPK1eWy/56mZVkMAgBACj9jKiYAhoQ8OAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff5 fs3 fc1 sc0 ls0 ws0">dynamic_cast<span class="_ _12"> </span><span class="ff1">Example<span class="_ _12"> </span>2</span></div><div class="t m0 x1 hd y11e ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y11f ff5 fs8 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span>{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;A&quot;</span></span>;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd y120 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y121 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd y122 ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">f<span class="fc0">()<span class="_"> </span></span></span><span class="fc5">override<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;B&quot;</span></span>;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y23 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y12c ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">*<span class="_"> </span><span class="fc3">get_object</span></span>(<span class="ff5 fc4">bool<span class="_"> </span></span>selectA)<span class="_"> </span>{</div><div class="t m0 x11 hd y124 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">(selectA)<span class="_"> </span><span class="fc6">?<span class="_"> </span></span></span>new<span class="_"> </span><span class="ffc fc0">A()<span class="_"> </span><span class="fc6">:<span class="_"> </span></span></span>new<span class="_"> </span><span class="ffc fc0">B();</span></div><div class="t m0 x1 hd y125 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y12d ff5 fs8 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ffc fc3">g<span class="fc0">(</span></span>bool<span class="_"> </span><span class="ffc fc0">value)<span class="_"> </span>{</span></div><div class="t m0 x11 hd y127 ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">*<span class="_"> </span></span>a<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>get_object(value);</div><div class="t m0 x11 hd y128 ffc fs8 fc0 sc0 ls0 ws0">B<span class="fc6">*<span class="_"> </span></span>b<span class="_"> </span><span class="fc6">=<span class="_"> </span><span class="ff5 fc5">dynamic_cast</span>&lt;</span>B<span class="fc6">*&gt;</span>(a);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>downcasting<span class="_ _8"> </span>+<span class="_ _c"> </span>check</span></div><div class="t m0 x11 hd y129 ff5 fs8 fc5 sc0 ls0 ws0">if<span class="_"> </span><span class="ffc fc0">(b<span class="_"> </span><span class="fc6">!=<span class="_"> </span></span></span>nullptr<span class="ffc fc0">)</span></div><div class="t m0 x24 hd y12a ffc fs8 fc0 sc0 ls0 ws0">b<span class="fc6">-&gt;</span>f();<span class="_ _36"> </span><span class="ffd fc7">//<span class="_ _8"> </span>exectuted<span class="_ _8"> </span>only<span class="_ _c"> </span>when<span class="_ _12"> </span>it<span class="_ _c"> </span>is<span class="_ _12"> </span>safe</span></div><div class="t m0 x1 hd y12b ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">34/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf26" class="pf w0 h0" data-page-no="26"><div class="pc pc26 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xc h2 y156 ff1 fs0 fc0 sc0 ls0 ws0">Op<span class="_ _0"></span>erato<span class="_ _5"></span>r</div><div class="t m0 xc h2 y157 ff1 fs0 fc0 sc0 ls0 ws0">Overloading</div><a class="l" href="#pf26" data-dest-detail='[38,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:149.618000px;width:241.993000px;height:24.025000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf26" data-dest-detail='[38,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:115.247000px;width:136.737000px;height:24.025000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf27" class="pf w0 h0" data-page-no="27"><div class="pc pc27 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIoklEQVR42u3YoU1EQRCA4VvyJqgNNRDUVUAIQZwgoTOaoBcECDrA0AHqsooxD4dEPMzs8X0VTGbMn2lX17c7AAAo4+Pt9cwWAACoRqQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAPCjZaYtAABQR0T4pAIAUI5IBQBApAIAgEgFAGA6y0Sz7u8ODgYAsM37y/NE0/qkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAIDT1jJzllnHGA4GALBN732WUSPCJxUAgHJEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBADhNLTNtAQCAOiLCJxUAgHJEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAAPibZaJZxxgOBgCwTe99oml9UgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKlWAACASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAC/a5lpCwAA1BERPqkAAJQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAKCY5fh4aQsANX3eP1kC8A/tbx5auzhfj1+73bquFgIAQAnfBBkl/Eb7I78AAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _12"> </span>Overloading</div><div class="t m0 xd hc yac ff1 fs7 fc1 sc0 ls0 ws0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _7"> </span>Overloading</div><div class="t m0 xd hc y158 ff1 fs7 fc0 sc0 ls0 ws0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _7"> </span>overloading<span class="_ _7"> </span><span class="ff4">is<span class="_ _a"> </span>a<span class="_ _e"> </span>sp<span class="_ _b"></span>ecial<span class="_ _7"> </span>case<span class="_ _a"> </span>of<span class="_ _e"> </span>p<span class="_ _b"></span>olymorphism<span class="_ _a"> </span>in<span class="_ _e"> </span>which<span class="_ _e"> </span>some<span class="_ _7"> </span><span class="ff9">operators</span></span></div><div class="t m0 xd hc y159 ff4 fs7 fc0 sc0 ls0 ws0">a<span class="_ _3"></span>re<span class="_ _e"> </span>treated<span class="_ _e"> </span>as<span class="_ _e"> </span>p<span class="_ _b"></span>olymorphic<span class="_ _a"> </span>functions<span class="_ _e"> </span>and<span class="_ _7"> </span>have<span class="_ _a"> </span>different<span class="_ _e"> </span>b<span class="_ _b"></span>ehaviors<span class="_ _a"> </span>dep<span class="_ _b"></span>ending<span class="_ _e"> </span>on<span class="_ _7"> </span>the</div><div class="t m0 xd hc y15a ff4 fs7 fc0 sc0 ls0 ws0">t<span class="_ _3"></span>yp<span class="_ _b"></span>e<span class="_ _e"> </span>of<span class="_ _e"> </span>its<span class="_ _e"> </span>arguments</div><div class="t m0 x1 hd y15b ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Point<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y15c ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x,<span class="_"> </span>y;</span></div><div class="t m0 x11 hd y15d ffc fs8 fc0 sc0 ls0 ws0">Point<span class="_"> </span><span class="ff5 fc5">operator</span><span class="fc6">+</span>(<span class="ff5 fc5">const<span class="_"> </span></span>Point<span class="fc6">&amp;<span class="_"> </span></span>p)<span class="_"> </span><span class="ff5 fc5">const<span class="_"> </span></span>{</div><div class="t m0 x24 hd y15e ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">{x<span class="_"> </span><span class="fc6">+<span class="_"> </span></span>p.x,<span class="_"> </span>y<span class="_"> </span><span class="fc6">+<span class="_"> </span></span>p.y};</span></div><div class="t m0 x11 hd y15f ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y160 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y161 ffc fs8 fc0 sc0 ls0 ws0">Point<span class="_"> </span>a{<span class="fc6">1</span>,<span class="_"> </span><span class="fc6">2</span>};</div><div class="t m0 x1 hd y162 ffc fs8 fc0 sc0 ls0 ws0">Point<span class="_"> </span>b{<span class="fc6">5</span>,<span class="_"> </span><span class="fc6">3</span>};</div><div class="t m0 x1 hd y163 ffc fs8 fc0 sc0 ls0 ws0">Point<span class="_"> </span>c<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>a<span class="_"> </span><span class="fc6">+<span class="_"> </span></span>b;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>&quot;c&quot;<span class="_ _8"> </span>is<span class="_ _c"> </span>(6,<span class="_ _12"> </span>5)</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">35/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf28" class="pf w0 h0" data-page-no="28"><div class="pc pc28 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAJmUlEQVR42u3cPYocdxDG4f2bLoQMhc8gFCnewAjFXsxezJfQXTZYB77BJr6BI1GwgypZZcITSP4Yj1W98zz5TPBGP6rpXq9/fHcFAABj/P7br99ZAQCAaUQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAACfre62AgAAc0SESyoAAOOIVAAARCoAAIhUAABEKgAAnGozwS48Hg7XN7d2AIBTPNzfGWEvfIIKAIBZfIIKAICJRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEA4BSbCXbh8XC4vrm1AwCc4uH+zgh7sbrbCgAAzBERHvcDADCOSAUAQKQCAIBIBQBApAIAgEgFAECkAgDAufmYP8A4VWUE/nOZaQR2xCUVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAA4srrbCgAAzBERLqkAAIwjUgEAGGczAcA0VWUEnrfMNAJf55IKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAADOa3W3FQAAmCMiXFIBABhHpAIAMM5mAoBpqsoIlyYzjQB/5pIKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAcWd1tBQAA5ogIl1QAAMbZTAAwTVUZ4esy0wjwvLmkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAR1Z3WwEAgDkiwiUVAIBxNhMATFNVRuBLMtMIXAKXVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEA4MjqbisAADBHRGxWAJimqozAl2SmEbgEHvcDACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAABHVndbAQCAOSLCJRUAgHE2EwBMU1Xn+/PMtDAwn0sqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAABwZHW3FQAAmCMiXFIBABhnMwHANFV1vj/PTAsD87mkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAR1Z3WwEAgDkiwiUVAIBxRCoAAONsJgCYpqqMMEpmGgH+Zy6pAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQDgvFZ3WwEAgDkiwiUVAIBxRCoAAONsJgCYpqqMAP9CZhrh2XBJBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAjqzutgIAAHNEhEsqAADjiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAEy3mQBgmqo65eeZaUNg71xSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgBw6VZ3WwEAgDkiwiUVAIBxRCoAACIVAAD+ymaCXXg8HK5vbu0AAKd4uL8zwl64pO7D9y9fGgEAuBze7gcAYBZv9wMAMJFIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAOzZZgLgclSVEeDbykwj8He4pAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAA/8jqbisAADBHRLikAgAwjkgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAMB024dfXlkBYO/++Om9EYBn483bn9f64cXTh49XV09PTwYBAGCET28TdwKU4EsgAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _12"> </span>Overloading</div><div class="t m0 x25 he y164 ff1 fs8 fc0 sc0 ls0 ws0">Catego<span class="_ _3"></span>ry<span class="_ _37"> </span>Op<span class="_ _b"></span>erato<span class="_ _3"></span>rs</div><div class="t m0 x26 he y165 ff1 fs8 fc0 sc0 ls0 ws0">Arithmetic<span class="_ _38"> </span><span class="ffc">+<span class="_ _1e"> </span>-<span class="_ _1e"> </span>*<span class="_ _1e"> </span>/<span class="_ _1e"> </span>%<span class="_ _1e"> </span>++<span class="_ _1e"> </span></span></div><div class="t m0 x26 he y166 ff1 fs8 fc0 sc0 ls0 ws0">Compa<span class="_ _3"></span>rison<span class="_ _37"> </span><span class="ffc">==<span class="_ _1e"> </span>!=<span class="_ _1e"> </span>&lt;<span class="_ _1e"> </span>&lt;=<span class="_ _1e"> </span>&gt;<span class="_ _1e"> </span>&gt;=<span class="_ _1e"> </span>&lt;=&gt;</span></div><div class="t m0 x26 h10 y167 ffe fs8 fc0 sc0 ls0 ws0">Bit<span class="_ _3"></span>wise<span class="_ _39"> </span><span class="ffc">|<span class="_ _1e"> </span>&amp;<span class="_ _1e"> </span>^<span class="_ _1e"> </span><span class="ff14"><span class="_ _1e"> </span></span>«<span class="_ _1e"> </span>»</span></div><div class="t m0 x26 h10 y168 ffe fs8 fc0 sc0 ls0 ws0">Logical<span class="_ _39"> </span><span class="ffc">!<span class="_ _1e"> </span>&amp;&amp;<span class="_ _1e"> </span>||</span></div><div class="t m0 x26 he y169 ff1 fs8 fc0 sc0 ls0 ws0">Comp<span class="_ _b"></span>ound<span class="_ _a"> </span>Assignment<span class="_ _a"> </span>Arithmetic<span class="_ _2d"> </span><span class="ffc">+=<span class="_ _1"> </span>-=<span class="_ _1e"> </span>*=<span class="_ _1e"> </span>/=<span class="_ _1e"> </span>%=</span></div><div class="t m0 x26 h10 y16a ffe fs8 fc0 sc0 ls0 ws0">Comp<span class="_ _b"></span>ound<span class="_ _10"> </span>Assignment<span class="_ _a"> </span>Bit<span class="_ _3"></span>wise<span class="_ _3a"> </span><span class="ffc">»=<span class="_ _1e"> </span>«=<span class="_ _1e"> </span>|=<span class="_ _1e"> </span>&amp;=<span class="_ _1e"> </span>^=</span></div><div class="t m0 x26 he y16b ff1 fs8 fc0 sc0 ls0 ws0">Subscript<span class="_ _3b"> </span><span class="ffc">[]</span></div><div class="t m0 x26 he y16c ff1 fs8 fc0 sc0 ls0 ws0">F<span class="_ _3"></span>unction<span class="_ _a"> </span>call<span class="_ _3c"> </span><span class="ffc">()</span></div><div class="t m0 x26 h10 y16d ffe fs8 fc0 sc0 ls0 ws0">A<span class="_ _3"></span>ddress-of,<span class="_ _a"> </span>Reference,<span class="_ _10"> </span>Dereferencing<span class="_ _3d"> </span><span class="ffc">&amp;<span class="_ _1e"> </span>-&gt;<span class="_ _1e"> </span>-&gt;*<span class="_ _1e"> </span>*</span></div><div class="t m0 x26 h10 y16e ffe fs8 fc0 sc0 ls0 ws0">Memo<span class="_ _3"></span>ry<span class="_ _3e"> </span><span class="ffc">new<span class="_ _1e"> </span>new[]<span class="_ _1e"> </span>delete<span class="_ _1e"> </span>delete[]</span></div><div class="t m0 x26 h10 y16f ffe fs8 fc0 sc0 ls0 ws0">Comma<span class="_ _3f"> </span><span class="ffc">,</span></div><div class="t m0 xe h6 y170 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Categories<span class="_ _10"> </span>not<span class="_ _a"> </span>in<span class="_ _a"> </span>b<span class="_ _b"></span>old<span class="_ _a"> </span>are<span class="_ _a"> </span>ra<span class="_ _3"></span>rely<span class="_ _a"> </span>used<span class="_ _a"> </span>in<span class="_ _a"> </span>practice</span></div><div class="t m0 xe h6 y171 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Op<span class="_ _b"></span>erato<span class="_ _3"></span>rs<span class="_ _a"> </span>that<span class="_ _a"> </span>cannot<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _a"> </span>overloaded:<span class="_ _4"> </span><span class="ffb">?<span class="_ _40"> </span>.<span class="_ _40"> </span>.*<span class="_ _2e"> </span>::<span class="_ _40"> </span>sizeof<span class="_ _2e"> </span>typeid</span></span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">36/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf29" class="pf w0 h0" data-page-no="29"><div class="pc pc29 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIjUlEQVR42u3YsWkDQRCG0Vtzg6PFNQhHqkAYxQZ15iZUjgIV4Q4UHRtpknPmUIFBMIffq2D5N/mY9n44TgAAUMb39fJiBQAAqhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAD8aplpBQAA6ogIl1QAAMoRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAoKbZBFQwxjDCM/TejQDAFrmkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQCAbWuZaQUAAOqICJdUAADKEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQCAZ5o39NYxhg8DAPib3vuGXuuSCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASDUBAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAADzWMtMKAADUEREuqQAAlCNSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgBQ3bx87awA8H/cPs9GAIrbf5xae3tdl/s0retqEAAASvgBv6EgAKyxC6sAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Compa<span class="_ _3"></span>rison<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator&lt;</span></div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">Relational<span class="_ _e"> </span>and<span class="_ _e"> </span>compa<span class="_ _3"></span>rison<span class="_ _e"> </span>op<span class="_ _b"></span>erators<span class="_ _e"> </span><span class="ffb fc3">operator&lt;,<span class="_"> </span>&lt;=,<span class="_"> </span>==,<span class="_"> </span>&gt;=<span class="_"> </span>&gt;<span class="_ _e"> </span></span>a<span class="_ _3"></span>re<span class="_ _e"> </span>used<span class="_ _e"> </span>for</div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">compa<span class="_ _3"></span>ring<span class="_ _e"> </span>tw<span class="_ _3"></span>o<span class="_ _e"> </span>objects</div><div class="t m0 x1 hc y172 ff4 fs7 fc0 sc0 ls0 ws0">In<span class="_ _e"> </span>pa<span class="_ _3"></span>rticular,<span class="_ _a"> </span>the<span class="_ _21"> </span><span class="ff5">operator&lt;<span class="_ _22"> </span></span>is<span class="_ _e"> </span>used<span class="_ _e"> </span>to<span class="_ _e"> </span>determine<span class="_ _e"> </span>the<span class="_ _e"> </span>ordering<span class="_ _a"> </span>of<span class="_ _e"> </span>a<span class="_ _7"> </span>set<span class="_ _a"> </span>of<span class="_ _e"> </span>objects</div><div class="t m0 x1 hc y173 ff4 fs7 fc0 sc0 ls0 ws0">(e.g.<span class="_ _8"> </span>sort)</div><div class="t m0 x1 hd y174 ffd fs8 fc8 sc0 ls0 ws0">#<span class="_ _14"> </span>include<span class="_ _22"> </span><span class="fc7">&lt;algorithm&gt;</span></div><div class="t m0 x1 hd y175 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y176 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x;</span></div><div class="t m0 x11 hd y177 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">&lt;<span class="fc0">(A<span class="_"> </span>a)<span class="_"> </span></span></span>const<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x24 hd y178 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">x<span class="_"> </span><span class="fc6">*<span class="_"> </span></span>x<span class="_"> </span><span class="fc6">&lt;<span class="_"> </span></span>a.x<span class="_"> </span><span class="fc6">*<span class="_"> </span></span>a.x;</span></div><div class="t m0 x11 hd y179 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y17a ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y17b ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>array[]<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>{<span class="fc6">5</span>,<span class="_"> </span><span class="fc6">-1</span>,<span class="_"> </span><span class="fc6">4</span>,<span class="_"> </span><span class="fc6">-7</span>};</div><div class="t m0 x1 hd y17c ffc fs8 fc0 sc0 ls0 ws0">std<span class="fc6">::</span>sort(array,<span class="_"> </span>array<span class="_"> </span><span class="fc6">+<span class="_"> </span>4</span>);</div><div class="t m0 x1 hd y17d ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>array:<span class="_ _8"> </span>{-1,<span class="_ _c"> </span>4,<span class="_ _12"> </span>5,<span class="_ _c"> </span>-7}</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">37/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2a" class="pf w0 h0" data-page-no="2a"><div class="pc pc2a w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIyElEQVR42u3aMUoDURSG0TyZi9XDNYiVhbWIVUDBnbkJ92KhhTuwcQdW4VU+ImNnIagkA3ozOWcBYfin+biZcnJ+uQAAgDRenh4PrAAAQDYiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQCAT6X3bgUAAPKICJdUAADSEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAACQzGACAKZorSV5klqr1wGz4ZIKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAe6b03q0AAEAeEeGSCgBAOiIVAACRCgAAIhUAAJEKAAAiFQCA2RlMAMAPWmtGgE3VWo0wkUsqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAA7JnBBPCX1uv3s+XVxB95fri3JADzVnrvVgDgO601I8Cmaq1GmCIi/N0PAEA6IhUAAJEKAAC/8U0qAAC5+CYVAICMRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAALIbduhZW2teGADAdmqtO/S0LqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUEwAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAACwrdJ7twIAAHlEhEsqAADpiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAMG/D6vbYCgB88Xp9ZwTgv5xe3JRydDiu3haLcRwNAgBACh8p7jH8bzm/ewAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Spaceship<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator&lt;=&gt;<span class="_ _41"> </span></span>1/4</div><div class="t m0 x1 hc yba ff4 fs7 fcd sc0 ls0 ws0">C++20<span class="_ _e"> </span><span class="fc0">allo<span class="_ _3"></span>ws<span class="_ _e"> </span>overloading<span class="_ _e"> </span>the<span class="_ _e"> </span><span class="ff1">spaceship<span class="_ _7"> </span>op<span class="_ _b"></span>erator<span class="_ _22"> </span><span class="ff5">&lt;=&gt;<span class="_ _21"> </span></span></span>(also<span class="_ _e"> </span>called<span class="_ _e"> </span><span class="ff9">three-w<span class="_ _3"></span>ay</span></span></div><div class="t m0 x1 hc ybb ff9 fs7 fc0 sc0 ls0 ws0">compa<span class="_ _3"></span>rison<span class="_ _b"></span><span class="ff4">)<span class="_ _e"> </span>for<span class="_ _a"> </span>replacing<span class="_ _e"> </span>all<span class="_ _e"> </span>comparison<span class="_ _a"> </span>op<span class="_ _b"></span>erators<span class="_ _22"> </span><span class="ffb">operator&lt;,<span class="_"> </span>&lt;=,<span class="_"> </span>==,<span class="_"> </span>&gt;=<span class="_"> </span>&gt;</span></span></div><div class="t m0 x1 hd y17e ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y17f ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">==<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">A<span class="fc6">&amp;</span>)<span class="_"> </span></span>const<span class="ffc fc0">;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>***<span class="_ _8"> </span>equal<span class="_ _c"> </span>comparison<span class="_ _12"> </span>is<span class="_ _c"> </span>special,</span></span></span></div><div class="t m0 x11 hd y180 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">!=<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">A<span class="fc6">&amp;</span>)<span class="_"> </span></span>const<span class="ffc fc0">;<span class="_"> </span><span class="ffd fc7">//<span class="_ _2d"> </span>see<span class="_ _8"> </span>next<span class="_ _8"> </span>slides</span></span></span></div><div class="t m0 x11 hd y181 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">&lt;<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">A<span class="fc6">&amp;</span>)<span class="_ _1e"> </span></span>const<span class="ffc fc0">;</span></span></div><div class="t m0 x11 hd y182 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">&lt;=<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">A<span class="fc6">&amp;</span>)<span class="_"> </span></span>const<span class="ffc fc0">;</span></span></div><div class="t m0 x11 hd y183 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">&gt;<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">A<span class="fc6">&amp;</span>)<span class="_ _1e"> </span></span>const<span class="ffc fc0">;</span></span></div><div class="t m0 x11 hd y184 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">&gt;=<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">A<span class="fc6">&amp;</span>)<span class="_"> </span></span>const<span class="ffc fc0">;</span></span></div><div class="t m0 x1 hd y185 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y186 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>replaced<span class="_ _8"> </span>by</div><div class="t m0 x1 hd y187 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y188 ff5 fs8 fc5 sc0 ls0 ws0">auto<span class="_"> </span>operator<span class="ffc fc6">&lt;=&gt;<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">B<span class="fc6">&amp;</span>)<span class="_"> </span></span>const<span class="ffc fc0">;</span></div><div class="t m0 x1 hd y189 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">38/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2b" class="pf w0 h0" data-page-no="2b"><div class="pc pc2b w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Spaceship<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator&lt;=&gt;<span class="_ _41"> </span></span>2/4</div><div class="t m0 x1 hd y11e ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Obj<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y11f ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x;</span></div><div class="t m0 x11 hd y121 ff5 fs8 fc5 sc0 ls0 ws0">auto<span class="_"> </span>operator<span class="ffc fc6">&lt;=&gt;<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">Obj<span class="fc6">&amp;<span class="_"> </span></span>other)<span class="_"> </span></span>const<span class="_"> </span><span class="ffc fc0">{</span></div><div class="t m0 x24 hd y122 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">x<span class="_"> </span><span class="fc6">-<span class="_"> </span></span>other.x;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>or<span class="_ _8"> </span>even<span class="_ _c"> </span>better<span class="_ _12"> </span>&quot;x<span class="_ _c"> </span>&lt;=&gt;<span class="_ _12"> </span>other.x&quot;</span></span></div><div class="t m0 x11 hd y23 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y123 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y124 ffc fs8 fc0 sc0 ls0 ws0">Obj<span class="_"> </span>a{<span class="fc6">3</span>};</div><div class="t m0 x1 hd y125 ffc fs8 fc0 sc0 ls0 ws0">Obj<span class="_"> </span>b{<span class="fc6">5</span>};</div><div class="t m0 x1 hd y126 ffc fs8 fc0 sc0 ls0 ws0">a<span class="_"> </span><span class="fc6">&lt;<span class="_"> </span></span>b;<span class="_ _42"> </span><span class="ffd fc7">//<span class="_ _8"> </span>true,<span class="_ _8"> </span>operator&lt;<span class="_ _c"> </span>is<span class="_ _12"> </span>generated</span></div><div class="t m0 x1 hd y12d ffc fs8 fc0 sc0 ls0 ws0">(a<span class="_"> </span><span class="fc6">&lt;=&gt;<span class="_"> </span></span>b)<span class="_"> </span><span class="fc6">&lt;<span class="_"> </span>0</span>;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>true</span></div><div class="t m0 x1 hc y18a ff9 fs7 fc0 sc0 ls0 ws0">Note:<span class="_ _c"> </span><span class="ff4">a<span class="_ _e"> </span>non-defaulted<span class="_ _22"> </span><span class="ffb">operator&lt;=&gt;<span class="_ _21"> </span></span>do<span class="_ _b"></span>esnt<span class="_ _e"> </span>generate<span class="_ _e"> </span>the<span class="_ _e"> </span>op<span class="_ _b"></span>erators<span class="_ _22"> </span><span class="ffb">==<span class="_ _22"> </span></span>and<span class="_ _22"> </span><span class="ffb">!=</span></span></div><div class="t m0 x1 hc y18b ff4 fs7 fc0 sc0 ls0 ws0">(see<span class="_ _e"> </span>next<span class="_ _e"> </span>slide)</div><div class="t m0 xe hd y18c ffc fs8 fce sc0 ls0 ws0">Looks<span class="_"> </span>Like<span class="_"> </span>a<span class="_"> </span>Duck,<span class="_"> </span>Swims<span class="_"> </span>Like<span class="_"> </span>a<span class="_"> </span>Duck,<span class="_"> </span>and<span class="_"> </span>Quacks<span class="_"> </span>Like<span class="_"> </span>operator==</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">39/66</div><a class="l" href="https://devblogs.microsoft.com/cppblog/simplify-your-code-with-rocket-science-c20s-spaceship-operator/#looks-like-a-duck-swims-like-a-duck-and-quacks-like-operator=="><div class="d m1" style="border-style:none;position:absolute;left:34.722000px;bottom:3.043000px;width:303.263000px;height:13.444000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2c" class="pf w0 h0" data-page-no="2c"><div class="pc pc2c w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIj0lEQVR42u3YsU0DQRCG0Vt0I0cr14AcUQFCjpHcmZugHAKKoANH1kZMcs4cAzJ4LL9Xwerf5NO0zfN2AgCAMj4/3h+sAABANSIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAICzlplWAACgjohwSQUAoByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQCAezebAADuyhjDCH+h926EC3JJBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAADX1TLTCgAA1BERLqkAAJQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAH5gvqG3jjF8GADA7/Teb+i1LqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUEwAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAgItomWkFAADqiAiXVAAAyhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAuLb5uH+0AgD/4PD6ZgTgO55edq2tV8vxa5qWZTEIAAAlnADweiAARmWMZQAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Spaceship<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator&lt;=&gt;<span class="_ _41"> </span></span>3/4</div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span>compiler<span class="_ _e"> </span>can<span class="_ _e"> </span>also<span class="_ _e"> </span>generate<span class="_ _e"> </span>the<span class="_ _e"> </span>co<span class="_ _b"></span>de<span class="_ _e"> </span>for<span class="_ _a"> </span>the<span class="_ _e"> </span><span class="ff9">spaceship<span class="_ _e"> </span>op<span class="_ _b"></span>erator<span class="_ _4"> </span><span class="ffb">=<span class="_"> </span>default<span class="_ _10"> </span></span></span>,<span class="_ _e"> </span>even</div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">fo<span class="_ _3"></span>r<span class="_ _e"> </span>multiple<span class="_ _e"> </span>fields<span class="_ _e"> </span>and<span class="_ _e"> </span>arra<span class="_ _3"></span>ys,<span class="_ _e"> </span>by<span class="_ _a"> </span>using<span class="_ _e"> </span>the<span class="_ _e"> </span>default<span class="_ _e"> </span>comparison<span class="_ _a"> </span>semantic<span class="_ _e"> </span>of<span class="_ _e"> </span>its<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</div><div class="t m0 x1 hd y18d ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Obj<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y18e ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _1e"> </span><span class="ffc fc0">x;</span></div><div class="t m0 x11 hd y18f ff5 fs8 fc4 sc0 ls0 ws0">char<span class="_"> </span><span class="ffc fc0">y;</span></div><div class="t m0 x11 hd y190 ff5 fs8 fc4 sc0 ls0 ws0">short<span class="_"> </span><span class="ffc fc0">z[<span class="fc6">2</span>];</span></div><div class="t m0 x11 hd y191 ff5 fs8 fc5 sc0 ls0 ws0">auto<span class="_"> </span>operator<span class="ffc fc6">&lt;=&gt;<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">Obj<span class="fc6">&amp;</span>)<span class="_"> </span></span>const<span class="_"> </span><span class="ffc fc6">=<span class="_"> </span></span>default<span class="ffc fc0">;</span></div><div class="t m0 x11 hd y192 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>if<span class="_ _8"> </span>x<span class="_ _c"> </span>==<span class="_ _12"> </span>other.x,<span class="_ _c"> </span>then<span class="_ _12"> </span>compare<span class="_ _c"> </span>y</div><div class="t m0 x11 hd y193 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>if<span class="_ _8"> </span>y<span class="_ _c"> </span>==<span class="_ _12"> </span>other.y,<span class="_ _c"> </span>then<span class="_ _12"> </span>compare<span class="_ _c"> </span>z</div><div class="t m0 x11 hd y194 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>if<span class="_ _8"> </span>z[0]<span class="_ _c"> </span>==<span class="_ _12"> </span>other.z[0],<span class="_ _c"> </span>then<span class="_ _12"> </span>compare<span class="_ _c"> </span>z[1]</div><div class="t m0 x1 hd y195 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y196 ffc fs8 fc0 sc0 ls0 ws0">Obj<span class="_"> </span>a{<span class="fc6">3</span>},<span class="_"> </span>b{<span class="fc6">5</span>};</div><div class="t m0 x1 hd y197 ffc fs8 fc0 sc0 ls0 ws0">a<span class="_"> </span><span class="fc6">==<span class="_"> </span></span>b;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>false,<span class="_ _8"> </span>operator==<span class="_ _c"> </span>is<span class="_ _12"> </span>generated<span class="_ _c"> </span>(=<span class="_ _12"> </span>default)</span></div><div class="t m0 x1 hd y198 ffc fs8 fc0 sc0 ls0 ws0">a<span class="_"> </span><span class="fc6">!=<span class="_"> </span></span>b;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>true,<span class="_ _1e"> </span>operator!=<span class="_ _8"> </span>is<span class="_ _c"> </span>generated<span class="_ _12"> </span>(=<span class="_ _c"> </span>default)</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">40/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2d" class="pf w0 h0" data-page-no="2d"><div class="pc pc2d w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Spaceship<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator&lt;=&gt;<span class="_ _41"> </span></span>4/4</div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ff9">spaceship<span class="_ _e"> </span>op<span class="_ _b"></span>erator<span class="_ _8"> </span></span>returns<span class="_ _e"> </span>one<span class="_ _e"> </span>of<span class="_ _e"> </span>follo<span class="_ _3"></span>wing<span class="_ _e"> </span>ordering<span class="_ _a"> </span>(classes)<span class="_ _21"> </span><span class="ffb">&lt;compare&gt;<span class="_ _10"> </span></span>:</div><div class="t m0 x5 h6 y199 ff5 fs4 fc0 sc0 ls0 ws0">std::strong_ordering<span class="_ _32"> </span><span class="ffa"><span class="_ _6"> </span><span class="ff4">If<span class="_ _22"> </span><span class="ffb">a<span class="_ _22"> </span></span>is<span class="_ _10"> </span>equivalent<span class="_ _a"> </span>to<span class="_ _22"> </span><span class="ffb">b<span class="_ _10"> </span></span>,<span class="_ _22"> </span><span class="ffb">f(a)<span class="_ _22"> </span></span>is<span class="_ _10"> </span>also<span class="_ _a"> </span>equivalent<span class="_ _a"> </span>to<span class="_ _22"> </span><span class="ffb">f(b)</span></span></span></div><div class="t m0 x27 h6 y19a ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Exactly<span class="_ _a"> </span>one<span class="_ _a"> </span>of<span class="_ _22"> </span><span class="ffb">&lt;<span class="_ _11"> </span></span>,<span class="_ _22"> </span><span class="ffb">==<span class="_ _10"> </span></span>,<span class="_ _a"> </span>or<span class="_ _43"> </span><span class="ffb">&gt;<span class="_ _43"> </span></span>must<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _a"> </span>true</span></div><div class="t m0 x27 h6 y19b ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">e.g.,<span class="_ _a"> </span>integral<span class="_ _a"> </span>types<span class="_ _a"> </span>(<span class="_ _10"> </span><span class="ffb">int<span class="_ _10"> </span></span>,<span class="_ _22"> </span><span class="ffb">char<span class="_ _10"> </span></span>)</span></div><div class="t m0 x28 h6 y19c ff5 fs4 fc0 sc0 ls0 ws0">std::weak_ordering<span class="_ _32"> </span><span class="ffa"><span class="_ _6"> </span><span class="ff4">If<span class="_ _43"> </span><span class="ffb">a<span class="_ _22"> </span></span>is<span class="_ _a"> </span>equivalent<span class="_ _a"> </span>to<span class="_ _43"> </span><span class="ffb">b<span class="_ _a"> </span></span>,<span class="_ _43"> </span><span class="ffb">f(a)<span class="_ _43"> </span></span>may<span class="_ _a"> </span>not<span class="_ _a"> </span>be<span class="_ _a"> </span>equivalent<span class="_ _a"> </span>to<span class="_ _43"> </span><span class="ffb">f(b)</span></span></span></div><div class="t m0 x27 h6 y19d ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Exactly<span class="_ _a"> </span>one<span class="_ _a"> </span>of<span class="_ _43"> </span><span class="ffb">&lt;<span class="_ _a"> </span></span>,<span class="_ _23"> </span><span class="ffb">==<span class="_ _a"> </span></span>,<span class="_ _a"> </span>o<span class="_ _3"></span>r<span class="_ _43"> </span><span class="ffb">&gt;<span class="_ _22"> </span></span>must<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _a"> </span>true</span></div><div class="t m0 x27 h6 y19e ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">e.g.,<span class="_ _a"> </span>rectangles<span class="_ _43"> </span><span class="ffb">R{2,<span class="_"> </span>5}<span class="_"> </span>==<span class="_"> </span>R{5,<span class="_"> </span>2}</span></span></div><div class="t m0 x29 h6 y19f ff5 fs4 fc0 sc0 ls0 ws0">std::partial_ordering<span class="_ _32"> </span><span class="ffa"><span class="_ _6"> </span><span class="ff4">If<span class="_ _43"> </span><span class="ffb">a<span class="_ _22"> </span></span>is<span class="_ _a"> </span>equivalent<span class="_ _a"> </span>to<span class="_ _43"> </span><span class="ffb">b<span class="_ _a"> </span></span>,<span class="_ _43"> </span><span class="ffb">f(a)<span class="_ _43"> </span></span>may<span class="_ _a"> </span>not<span class="_ _a"> </span>be<span class="_ _a"> </span>equivalent<span class="_ _a"> </span>to<span class="_ _43"> </span><span class="ffb">f(b)</span></span></span></div><div class="t m0 x27 h6 y1a0 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _26"> </span><span class="ffb">&lt;<span class="_ _10"> </span><span class="ff4">,<span class="_ _43"> </span></span>==<span class="_ _a"> </span><span class="ff4">,<span class="_ _a"> </span>o<span class="_ _3"></span>r<span class="_ _43"> </span><span class="ffb">&gt;<span class="_ _22"> </span></span>ma<span class="_ _3"></span>y<span class="_ _a"> </span>all<span class="_ _a"> </span>b<span class="_ _b"></span>e<span class="_ _a"> </span>false</span></span></div><div class="t m0 x27 h6 y1a1 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">e.g.,<span class="_ _a"> </span>floating-p<span class="_ _b"></span>oint<span class="_ _a"> </span>(<span class="_ _10"> </span><span class="ffb">float<span class="_ _22"> </span></span>with<span class="_ _43"> </span><span class="ffb">NaN<span class="_ _10"> </span></span>)</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">41/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2e" class="pf w0 h0" data-page-no="2e"><div class="pc pc2e w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4UQuWB3OIFZOIGIt3GYu4TgWDuEGVsdVpomdAwjCf+fzTBC+NC9/3h1OCQAAwnjcbysrAAAQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOAj11qtAABAHKUUl1QAAMIRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUA4D91M3rrNE0+DADgO33fz+i1LqkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUEwAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAWIxca7UCAABxlFJcUgEACEekAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQCA3+rGy9YKAMzR83w1AizS/jjkvFm38ZVSa80gAACE8AaN0xoCeWZVdgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Subscript<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator[]</span></div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ff1">a<span class="_ _3"></span>rray<span class="_ _e"> </span>subscript<span class="_ _e"> </span><span class="ffb fc3">operator[]<span class="_ _e"> </span></span><span class="ff4">allows<span class="_ _a"> </span>accessing<span class="_ _e"> </span>to<span class="_ _e"> </span>an<span class="_ _e"> </span>object<span class="_ _e"> </span>in<span class="_ _e"> </span>an<span class="_ _e"> </span>arra<span class="_ _3"></span>y-lik<span class="_ _3"></span>e<span class="_ _e"> </span>fashion</span></span></div><div class="t m0 x1 hc y1a2 ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span>op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _e"> </span>accepts<span class="_ _e"> </span>everything<span class="_ _e"> </span>as<span class="_ _e"> </span>parameter,<span class="_ _e"> </span>not<span class="_ _e"> </span>just<span class="_ _e"> </span>integers</div><div class="t m0 x1 hd y1a3 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y1a4 ff5 fs8 fc4 sc0 ls0 ws0">char<span class="_"> </span><span class="ffc fc0">permutation[]<span class="_"> </span>{<span class="ff18 fc9">&apos;<span class="ffc">c</span>&apos;</span>,<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">b</span>&apos;</span>,<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">d</span>&apos;</span>,<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">a</span>&apos;</span>,<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">h</span>&apos;</span>,<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">y</span>&apos;</span>};</span></div><div class="t m0 x11 hd y1a5 ff5 fs8 fc4 sc0 ls0 ws0">char<span class="ffc fc6">&amp;<span class="_"> </span></span><span class="fc5">operator<span class="ffc fc0">[](</span></span>char<span class="_"> </span><span class="ffc fc0">c)<span class="_"> </span>{<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>read/write</span></span></div><div class="t m0 x24 hd y1a6 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">permutation[c<span class="_"> </span><span class="fc6">-<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">a</span>&apos;</span></span>];</span></div><div class="t m0 x11 hd y1a7 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x11 hd y1a8 ff5 fs8 fc4 sc0 ls0 ws0">char<span class="_"> </span><span class="fc5">operator<span class="ffc fc0">[](</span></span>char<span class="_"> </span><span class="ffc fc0">c)<span class="_"> </span></span><span class="fc5">const<span class="_"> </span><span class="ffc fc0">{<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>read<span class="_ _8"> </span>only</span></span></span></div><div class="t m0 x24 hd y1a9 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">permutation[c<span class="_"> </span><span class="fc6">-<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">a</span>&apos;</span></span>];</span></div><div class="t m0 x11 hd y1aa ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y1ab ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y1ac ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>a;</div><div class="t m0 x1 hd y1ad ffc fs8 fc0 sc0 ls0 ws0">a[<span class="ff18 fc9">&apos;<span class="ffc">d</span>&apos;</span>]<span class="_"> </span><span class="fc6">=<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">t</span>&apos;</span></span>;</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">42/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf2f" class="pf w0 h0" data-page-no="2f"><div class="pc pc2f w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQkCMRiG4YtcsArOIFZOIGItuJlLOI6FQ7iB1XGVaWLnAAfCH3meCcKX5uVPu8NpAACAMJ6P+8oKAABEI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAPhKtVYrAAAQR87ZJRUAgHBEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAD4jbGjt87z7MMAAJYppXT0WpdUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEqgkAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAWCrVWq0AAEAcOWeXVAAAwhGpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAEAo43TdWgGA//Y634wAHdkfLylt1m16D0NrzSAAAITwAQUlGgIE/qHTAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Multidimensional<span class="_ _12"> </span>Subscript<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator[]</span></div><div class="t m0 x1 hc yba ff4 fs7 fcd sc0 ls0 ws0">C++23<span class="_ _e"> </span><span class="fc0">intro<span class="_ _b"></span>duces<span class="_ _e"> </span>the<span class="_ _e"> </span><span class="ff9">multidimensional<span class="_ _e"> </span>subscript<span class="_ _e"> </span>op<span class="_ _b"></span>erator<span class="_ _8"> </span></span>and<span class="_ _e"> </span>replaces<span class="_ _e"> </span>the<span class="_ _e"> </span>standard</span></div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">b<span class="_ _b"></span>ehavio<span class="_ _3"></span>r<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span><span class="ff9">comma<span class="_ _e"> </span>op<span class="_ _0"></span>erato<span class="_ _3"></span>r</span></div><div class="t m0 x1 hd y18d ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y18e ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="fc5">operator<span class="ffc fc0">[](</span></span>int<span class="_"> </span><span class="ffc fc0">x)<span class="_"> </span>{<span class="_"> </span></span><span class="fc5">return<span class="_"> </span><span class="ffc fc0">x;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y18f ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y190 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y1ae ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="fc5">operator<span class="ffc fc0">[](</span></span>int<span class="_"> </span><span class="ffc fc0">x,<span class="_"> </span></span>int<span class="_"> </span><span class="ffc fc0">y)<span class="_"> </span>{<span class="_"> </span></span><span class="fc5">return<span class="_"> </span><span class="ffc fc0">x<span class="_"> </span><span class="fc6">*<span class="_"> </span></span>y;<span class="_"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>not<span class="_ _8"> </span>allowed<span class="_ _c"> </span>before<span class="_ _12"> </span>C++23</span></span></span></div><div class="t m0 x1 hd y191 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y193 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc3">main<span class="fc0">()<span class="_"> </span>{</span></span></div><div class="t m0 x11 hd y194 ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>a;</div><div class="t m0 x11 hd y195 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>a[<span class="fc6">3</span>,<span class="_"> </span><span class="fc6">4</span>];<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>return<span class="_ _8"> </span>4<span class="_ _c"> </span>(bug)</span></div><div class="t m0 x11 hd y1af ffc fs8 fc0 sc0 ls0 ws0">B<span class="_"> </span>b;</div><div class="t m0 x11 hd y196 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>b[<span class="fc6">3</span>,<span class="_"> </span><span class="fc6">4</span>];<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>return<span class="_ _8"> </span>12,<span class="_ _c"> </span>C++23</span></div><div class="t m0 x1 hd y197 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">43/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf30" class="pf w0 h0" data-page-no="30"><div class="pc pc30 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4UQuWB3OIFZOIGIt3GYu4TgWDuEGVsdVpomFYGkhiP/B80wQvjQvf97sDgkAAMK4XS8LKwAAEI1IBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQDgLddarQAAQBylFJdUAADCEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAA/Fw3o7dO0+TDAAC+0/f9jF7rkgoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEg1AQAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAB8lmutVgAAII5SiksqAADhiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAQGTdeFpbAQBe7sezEeDvtvsh59WyjY+UWmsGAQAghCe1YxoCymLNhAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">F<span class="_ _3"></span>unction<span class="_ _12"> </span>Call<span class="_ _12"> </span>Op<span class="_ _0"></span>erato<span class="_ _3"></span>r<span class="_ _12"> </span><span class="ff5">operator()</span></div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ff1">function<span class="_ _7"> </span>call<span class="_ _7"> </span>op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _7"> </span><span class="ffb fc3">operator()<span class="_ _a"> </span></span><span class="ff4">is<span class="_ _e"> </span>generally<span class="_ _e"> </span>overloaded<span class="_ _e"> </span>to<span class="_ _e"> </span>create<span class="_ _e"> </span>objects</span></span></div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">which<span class="_ _e"> </span>b<span class="_ _b"></span>ehave<span class="_ _e"> </span>lik<span class="_ _3"></span>e<span class="_ _e"> </span>functions,<span class="_ _e"> </span>or<span class="_ _a"> </span>for<span class="_ _e"> </span>classes<span class="_ _e"> </span>that<span class="_ _e"> </span>have<span class="_ _e"> </span>a<span class="_ _e"> </span>p<span class="_ _3"></span>rimary<span class="_ _a"> </span>op<span class="_ _b"></span>eration<span class="_ _e"> </span>(see<span class="_ _e"> </span><span class="ffb">Basic</span></div><div class="t m0 x1 hc y142 ffb fs7 fc0 sc0 ls0 ws0">Concepts<span class="_"> </span>IV<span class="_ _e"> </span><span class="ff4">lecture)</span></div><div class="t m0 x1 hd y1b0 ffd fs8 fc8 sc0 ls0 ws0">#<span class="_ _14"> </span>include<span class="_ _43"> </span><span class="fc7">&lt;numeric&gt;<span class="_ _30"> </span>//<span class="_ _c"> </span>for<span class="_ _12"> </span>std::accumulate</span></div><div class="t m0 x1 hd y1b1 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Multiply<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y1b2 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc3">operator<span class="fc0">()(</span></span>int<span class="_"> </span><span class="ffc fc0">a,<span class="_"> </span></span>int<span class="_"> </span><span class="ffc fc0">b)<span class="_"> </span></span><span class="fc5">const<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x24 hd y1b3 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">a<span class="_"> </span><span class="fc6">*<span class="_"> </span></span>b;</span></div><div class="t m0 x11 hd y1b4 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y1b5 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y1b6 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">array[]<span class="_ _2a"> </span><span class="fc6">=<span class="_"> </span></span>{<span class="_"> </span><span class="fc6">2</span>,<span class="_"> </span><span class="fc6">3</span>,<span class="_"> </span><span class="fc6">4<span class="_"> </span></span>};</span></div><div class="t m0 x1 hd y1b7 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">factorial<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>std<span class="fc6">::</span>accumulate(array,<span class="_"> </span>array<span class="_"> </span><span class="fc6">+<span class="_"> </span>3</span>,<span class="_"> </span><span class="fc6">1</span>,<span class="_"> </span>Multiply{});</span></div><div class="t m0 x1 hd y1b8 ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>factorial;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>24</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">44/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf31" class="pf w0 h0" data-page-no="31"><div class="pc pc31 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIxElEQVR42u3cvU3EUBCFUT/kEdETNSAiKkCIGInOaIJyCCiCDohWL2ISkxER7I+MZ+GcCqy7ybdjye3m7mECAIAy3t9eL6wAAEA1IhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAgG8tM60AAEAdEeGSCgBAOSIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAf91sAgDgR2MMI2yi924El1QAAMpxSYV9/beLgv/xAGzIJRUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAbGs2Aeyp924EAPgdLqkAAIhUAAAQqQAAiFQAADhVy0wrAABQR0S4pAIAUI5PUEFFYwwjbMKHxgCKcEkFAKAcl1QAWMt5vRXxJoFSXFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAwLZmEwDASnrvRoDjuKQCACBSAQBApAIAIFIBAOBULTOtAABAHRHhkgoAQDkiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAA1c1n9KxjDD8YAMBxeu9n9LQuqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQTAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAAHCslplWAACgjohwSQUAoByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAAAcZN49X1sBAA7y8fhiBFjP7f1Ta1eXy+5zmpZlMQgAACV8AaMnLFQ+LVTzAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff5 fs3 fc1 sc0 ls0 ws0">static<span class="_"> </span>operator()<span class="_ _12"> </span><span class="ff1">and<span class="_ _12"> </span></span>static<span class="_"> </span>operator[]</div><div class="t m0 x1 hc yba ff4 fs7 fcd sc0 ls0 ws0">C++23<span class="_ _e"> </span><span class="fc0">intro<span class="_ _b"></span>duces<span class="_ _e"> </span>the<span class="_ _22"> </span><span class="ff5">static<span class="_ _21"> </span></span>version<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span><span class="ff9">function<span class="_ _e"> </span>call<span class="_ _e"> </span>op<span class="_ _b"></span>erator<span class="_ _4"> </span><span class="ffb">operator()</span></span></span></div><div class="t m0 x1 hc y1b9 ff4 fs7 fc0 sc0 ls0 ws0">and<span class="_ _e"> </span>the<span class="_ _e"> </span><span class="ff9">subscript<span class="_ _e"> </span>op<span class="_ _b"></span>erator<span class="_ _4"> </span><span class="ffb">operator[]<span class="_ _43"> </span></span></span>to<span class="_ _e"> </span>avoid<span class="_ _e"> </span>passing<span class="_ _7"> </span>the<span class="_ _22"> </span><span class="ffb">this<span class="_ _22"> </span></span>p<span class="_ _b"></span>ointer</div><div class="t m0 x1 hd y1ba ffd fs8 fc8 sc0 ls0 ws0">#<span class="_ _14"> </span>include<span class="_ _43"> </span><span class="fc7">&lt;numeric&gt;<span class="_ _30"> </span>//<span class="_ _c"> </span>for<span class="_ _12"> </span>std::accumulate</span></div><div class="t m0 x1 hd y1bb ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Multiply<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x1 hd y1bc ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _1e"> </span>int<span class="_ _24"> </span>operator()(int<span class="_ _8"> </span>a,<span class="_ _8"> </span>int<span class="_ _c"> </span>b);<span class="_ _12"> </span>//<span class="_ _c"> </span>declaration<span class="_ _12"> </span>only</div><div class="t m0 x11 hd y1bd ff5 fs8 fc5 sc0 ls0 ws0">static<span class="_"> </span><span class="fc4">int<span class="_"> </span><span class="ffc fc3">operator<span class="fc0">()(</span></span>int<span class="_"> </span><span class="ffc fc0">a,<span class="_"> </span></span>int<span class="_"> </span><span class="ffc fc0">b);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>best<span class="_ _8"> </span>efficiency,<span class="_ _c"> </span>no<span class="_ _12"> </span>need<span class="_ _c"> </span>to<span class="_ _12"> </span>access</span></span></span></div><div class="t m0 x1 hd y1be ffc fs8 fc0 sc0 ls0 ws0">};<span class="_ _44"> </span><span class="ffd fc7">//<span class="_ _8"> </span>internal<span class="_ _8"> </span>data<span class="_ _c"> </span>members</span></div><div class="t m0 x1 hd y1bf ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">MyArray<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x1 hd y1c0 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _1e"> </span>int<span class="_ _24"> </span>operator[](int<span class="_ _8"> </span>x);</div><div class="t m0 x11 hd y1c1 ff5 fs8 fc5 sc0 ls0 ws0">static<span class="_"> </span><span class="fc4">int<span class="_"> </span></span>operator<span class="ffc fc0">[](</span><span class="fc4">int<span class="_"> </span><span class="ffc fc0">x);<span class="_ _24"> </span><span class="ffd fc7">//<span class="_ _8"> </span>best<span class="_ _8"> </span>efficiency</span></span></span></div><div class="t m0 x1 hd y1c2 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y1c3 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">array[]<span class="_ _2a"> </span><span class="fc6">=<span class="_"> </span></span>{<span class="_"> </span><span class="fc6">2</span>,<span class="_"> </span><span class="fc6">3</span>,<span class="_"> </span><span class="fc6">4<span class="_"> </span></span>};</span></div><div class="t m0 x1 hd y1c4 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">factorial<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>std<span class="fc6">::</span>accumulate(array,<span class="_"> </span>array<span class="_"> </span><span class="fc6">+<span class="_"> </span>3</span>,<span class="_"> </span><span class="fc6">1</span>,<span class="_"> </span>Multiply{});</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">45/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf32" class="pf w0 h0" data-page-no="32"><div class="pc pc32 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQnCQBiG4ZzksDqcQaycQMRayGYu4TgWDuEGViGV15ydfYTAH3ieCY7vmpc/HU6XDgAAwng9HxsrAAAQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOAn1VqtAABAHDlnl1QAAMIRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBgGf2K3jpNkw8DAPhPKWVFr3VJBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApJoAAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAwQ6q1WgEAgDhyzi6pAACEI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAADE1Y+3vRUAYCHv690IMNfxPKS027bx03WtNYMAABDCF4UkGgJcYtL7AAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Conversion<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator<span class="_"> </span>T()<span class="_ _45"> </span></span>1/2</div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ff1">conversion<span class="_ _7"> </span>op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _7"> </span><span class="ffb fc3">operator<span class="_"> </span>T()<span class="_ _a"> </span></span><span class="ff4">allows<span class="_ _a"> </span>objects<span class="_ _e"> </span>to<span class="_ _7"> </span>be<span class="_ _e"> </span>either<span class="_ _e"> </span>implicitly<span class="_ _e"> </span>or</span></span></div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">explicitly<span class="_ _e"> </span>(casting)<span class="_ _e"> </span>converted<span class="_ _e"> </span>to<span class="_ _e"> </span>another<span class="_ _e"> </span>type</div><div class="t m0 x1 hd y18d ff5 fs8 fc5 sc0 ls0 ws0">class<span class="_"> </span><span class="fc3">MyBool<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y18e ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x;</span></div><div class="t m0 x1 hd y18f ff5 fs8 fc5 sc0 ls0 ws0">public<span class="ffc fc6">:</span></div><div class="t m0 x11 hd y190 ffc fs8 fc0 sc0 ls0 ws0">MyBool(<span class="ff5 fc4">int<span class="_"> </span></span>x1)<span class="_"> </span><span class="fc6">:<span class="_"> </span></span>x{x1}<span class="_"> </span>{}</div><div class="t m0 x11 hd y191 ff5 fs8 fc5 sc0 ls0 ws0">operator<span class="_"> </span><span class="fc4">bool<span class="ffc fc0">()<span class="_"> </span></span></span>const<span class="_"> </span><span class="ffc fc0">{<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>implicit<span class="_ _8"> </span>return<span class="_ _c"> </span>type</span></span></div><div class="t m0 x24 hd y192 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">x<span class="_"> </span><span class="fc6">==<span class="_"> </span>0</span>;</span></div><div class="t m0 x11 hd y193 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y194 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y1af ffc fs8 fc0 sc0 ls0 ws0">MyBool<span class="_"> </span>my_bool{<span class="fc6">3</span>};</div><div class="t m0 x1 hd y196 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="ffc fc0">b<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>my_bool;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>b<span class="_ _8"> </span>=<span class="_ _c"> </span>false,<span class="_ _12"> </span>call<span class="_ _c"> </span>operator<span class="_ _12"> </span>bool()</span></span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">46/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf33" class="pf w0 h0" data-page-no="33"><div class="pc pc33 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIoUlEQVR42u3ZsUkEURSG0XkyF6OHNYiRFYgYC+aWskUYbgMWYREGFmEHRsuLvOCOgSCGsiB7R86p4PJP8vGmXVzdTAAAUMbry/OJFQAAqEakAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAADwrWWmFQAAqCMivKQCAFCOSAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAf2Ne0a1jDB8MAOAwvfcVXeslFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkWoCAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAwA+zCfivPvb7++3WDr/0tNkYAYA6Wmau5dYxhg8GAHCY3vtaTo0Iv/sBAChHpAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQCA42qZaQUAAOqICC+pAACUI1IBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAgFLm3cO5FQDg6N5uH40AXy6v71o7O11279O0LItBAAAo4ROApyYAzp/tEAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Conversion<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator<span class="_"> </span>T()<span class="_ _45"> </span></span>2/2</div><div class="t m0 x1 hc yba ff4 fs7 fcd sc0 ls0 ws0">C++11<span class="_ _e"> </span><span class="ff1 fc0">Conversion<span class="_ _7"> </span>op<span class="_ _b"></span>erato<span class="_ _3"></span>rs<span class="_ _e"> </span><span class="ff4">can<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>mark<span class="_ _3"></span>ed<span class="_ _e"> </span><span class="ffb fc3">explicit<span class="_ _e"> </span></span>to<span class="_ _e"> </span>prevent<span class="_ _a"> </span>implicit</span></span></div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">conversions.<span class="_ _8"> </span>It<span class="_ _7"> </span>is<span class="_ _a"> </span>a<span class="_ _e"> </span>go<span class="_ _b"></span>o<span class="_ _b"></span>d<span class="_ _e"> </span>practice<span class="_ _e"> </span>as<span class="_ _e"> </span>fo<span class="_ _3"></span>r<span class="_ _e"> </span>class<span class="_ _e"> </span>constructors</div><div class="t m0 x1 hd y18d ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y18e ff5 fs8 fc5 sc0 ls0 ws0">operator<span class="_"> </span><span class="fc4">bool<span class="ffc fc0">()<span class="_"> </span>{<span class="_"> </span></span></span>return<span class="_"> </span><span class="ffc">true<span class="fc0">;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y18f ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y1ae ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y191 ff5 fs8 fc5 sc0 ls0 ws0">explicit<span class="_"> </span>operator<span class="_"> </span><span class="fc4">bool<span class="ffc fc0">()<span class="_"> </span>{<span class="_"> </span></span></span>return<span class="_"> </span><span class="ffc">true<span class="fc0">;<span class="_"> </span>}</span></span></div><div class="t m0 x1 hd y192 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y194 ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>a;</div><div class="t m0 x1 hd y195 ffc fs8 fc0 sc0 ls0 ws0">B<span class="_"> </span>b;</div><div class="t m0 x1 hd y1af ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_ _1f"> </span><span class="ffc fc0">c1<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>a;</span></div><div class="t m0 x1 h10 y196 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>bool<span class="_ _8"> </span>c2<span class="_ _c"> </span>=<span class="_ _12"> </span>b;<span class="_ _1e"> </span>//<span class="_ _c"> </span><span class="ff12">compile<span class="_ _10"> </span>erro<span class="_ _3"></span>r<span class="ffd">:<span class="_ _c"> </span>explicit</span></span></div><div class="t m0 x1 hd y197 ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_ _1f"> </span><span class="ffc fc0">c3<span class="_"> </span><span class="fc6">=<span class="_"> </span></span></span><span class="fc5">static_cast<span class="ffc fc6">&lt;</span></span>bool<span class="ffc fc6">&gt;<span class="fc0">(b);</span></span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">47/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf34" class="pf w0 h0" data-page-no="34"><div class="pc pc34 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQlCMRSG0Rd5werhDGLlBCLWgpu5hONYOIQbWD1SmSZ2DmAhN3rOBOFP83HTZncYAAAgjPvturACAADRiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAN5SrdUKAADEkXN2SQUAIByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQD4Z2NHby2l+DAAgM9M09TRa11SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqSYAAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAAepZqrVYAACCOnLNLKgAA4YhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAOArxvm8tgIAdORxvBiB37bdn1JaLdv8HIbWmkEAAAjhBYD0GgLBR77sAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Return<span class="_ _12"> </span>T<span class="_ _5"></span>yp<span class="_ _b"></span>e<span class="_ _12"> </span>Overloading<span class="_ _12"> </span>Resolution</div><div class="t m0 x2a h15 y1c5 ff6 fs5 fc1 sc0 ls0 ws0"></div><div class="t m0 x1 hd y1c6 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y77 ff5 fs8 fc5 sc0 ls0 ws0">operator<span class="_"> </span><span class="fc4">float<span class="ffc fc0">()<span class="_"> </span>{<span class="_"> </span></span></span>return<span class="_"> </span><span class="ffc fc6">3.0f<span class="fc0">;<span class="_"> </span>}</span></span></div><div class="t m0 x11 hd y1c7 ff5 fs8 fc5 sc0 ls0 ws0">operator<span class="_"> </span><span class="fc4">int<span class="ffc fc0">()<span class="_ _2a"> </span>{<span class="_"> </span></span></span>return<span class="_"> </span><span class="ffc fc6">2<span class="fc0">;<span class="_ _1f"> </span>}</span></span></div><div class="t m0 x1 hd y78 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y7a ff5 fs8 fc5 sc0 ls0 ws0">auto<span class="_"> </span><span class="ffc fc0">f()<span class="_"> </span>{</span></div><div class="t m0 x11 hd yaa ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">A{};</span></div><div class="t m0 x1 hd y7b ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y7d ff5 fs8 fc4 sc0 ls0 ws0">float<span class="_"> </span><span class="ffc fc0">x<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>f();</span></div><div class="t m0 x1 hd yab ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _2a"> </span><span class="ffc fc0">y<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>f();</span></div><div class="t m0 x1 hd y7e ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>x<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;<span class="_"> </span>&quot;<span class="_"> </span></span>&lt;&lt;<span class="_"> </span></span>y;<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>x=3.0f,<span class="_ _8"> </span>y=2</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">48/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf35" class="pf w0 h0" data-page-no="35"><div class="pc pc35 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Increment<span class="_ _12"> </span>and<span class="_ _12"> </span>Decrement<span class="_ _12"> </span>Op<span class="_ _0"></span>erato<span class="_ _3"></span>rs<span class="_ _12"> </span><span class="ff5">operator++/</span></div><div class="t m0 x1 hc y1c8 ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span>increment<span class="_ _e"> </span>and<span class="_ _e"> </span>decrement<span class="_ _e"> </span>op<span class="_ _b"></span>erators<span class="_ _a"> </span><span class="ffb fc3">operator++</span>,<span class="_ _e"> </span><span class="ffb fc3">operator<span class="_ _e"> </span></span>are<span class="_ _a"> </span>used<span class="_ _e"> </span>to<span class="_ _e"> </span>up<span class="_ _b"></span>date</div><div class="t m0 x1 hc y1c9 ff4 fs7 fc0 sc0 ls0 ws0">the<span class="_ _e"> </span>value<span class="_ _e"> </span>of<span class="_ _e"> </span>a<span class="_ _e"> </span>variable<span class="_ _a"> </span>by<span class="_ _a"> </span>one<span class="_ _e"> </span>unit</div><div class="t m0 x1 hd y1ca ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y1cb ff5 fs8 fc4 sc0 ls0 ws0">int<span class="ffc fc6">*<span class="_"> </span><span class="fc0">ptr;</span></span></div><div class="t m0 x11 hd y1cc ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _1e"> </span><span class="ffc fc0">pos;</span></div><div class="t m0 x11 h10 y1cd ffc fs8 fc0 sc0 ls0 ws0">A<span class="fc6">&amp;<span class="_"> </span><span class="ff5 fc5">operator</span>++</span>()<span class="_"> </span>{<span class="_ _2d"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="ff12">Prefix<span class="_"> </span></span>notation<span class="_ _c"> </span>(++var):</span></div><div class="t m0 x24 h10 y1ce ffc fs8 fc6 sc0 ls0 ws0">++<span class="fc0">ptr;<span class="_ _46"> </span><span class="ffd fc7">//<span class="_ _1e"> </span>returns<span class="_ _8"> </span>the<span class="_ _8"> </span>new<span class="_ _c"> </span><span class="ff12">cop<span class="_ _3"></span>y<span class="_"> </span><span class="ffd">of<span class="_ _8"> </span>the<span class="_ _c"> </span>object<span class="_ _12"> </span></span>by-reference</span></span></span></div><div class="t m0 x24 hd y1cf ffc fs8 fc6 sc0 ls0 ws0">++<span class="fc0">pos;</span></div><div class="t m0 x24 hd y1d0 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc6">*</span>this<span class="ffc fc0">;</span></div><div class="t m0 x11 hd y1d1 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x11 h10 y1d2 ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span><span class="ff5 fc5">operator</span><span class="fc6">++</span>(<span class="ff5 fc4">int<span class="_"> </span></span>a)<span class="_"> </span>{<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span><span class="ff12">Postfix<span class="_ _10"> </span>notation<span class="_"> </span></span>(var++):</span></div><div class="t m0 x24 h10 y1d3 ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>tmp<span class="_"> </span><span class="fc6">=<span class="_"> </span>*<span class="ff5 fc5">this</span></span>;<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _1e"> </span>returns<span class="_ _8"> </span>the<span class="_ _8"> </span><span class="ff12">old<span class="_ _c"> </span></span>copy<span class="_ _12"> </span>of<span class="_ _c"> </span>the<span class="_ _12"> </span>object<span class="_ _c"> </span><span class="ff12">b<span class="_ _3"></span>y-value</span></span></div><div class="t m0 x24 hd y1d4 ffc fs8 fc6 sc0 ls0 ws0">++<span class="fc0">ptr;</span></div><div class="t m0 x24 hd y1d5 ffc fs8 fc6 sc0 ls0 ws0">++<span class="fc0">pos;</span></div><div class="t m0 x24 hd y1d6 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">tmp;</span></div><div class="t m0 x11 hd y1d7 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y1d8 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">49/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf36" class="pf w0 h0" data-page-no="36"><div class="pc pc36 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIbklEQVR42u3YoQ1CMRSG0ZbQoF4YAIliAkLQJG8t9mAcBEOwwVOkipriGABB7oNzJrj5a740b/fHBAAAYdxv14UVAACIRqQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAPCWW2tWAAAgjlKKn1QAAMIRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEA+FXLGd1aa/VgAACfGYZhRtf6SQUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKSaAAAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAA8AV5Om+sAAD/bDpdjEAou8OY83rVH8+Ueu8GAQAghBduvxbxm9BJWwAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Assignment<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator=<span class="_ _47"> </span></span>1/3</div><div class="t m0 x1 hc y1c8 ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ff1">assignment<span class="_ _7"> </span>op<span class="_ _b"></span>erato<span class="_ _3"></span>r<span class="_ _7"> </span><span class="ffb fc3">operator=<span class="_ _a"> </span></span><span class="ff4">is<span class="_ _e"> </span>used<span class="_ _e"> </span>to<span class="_ _7"> </span>cop<span class="_ _3"></span>y<span class="_ _e"> </span>values<span class="_ _e"> </span>from<span class="_ _e"> </span>one<span class="_ _e"> </span>object<span class="_ _e"> </span>to</span></span></div><div class="t m0 x1 hc y1c9 ff4 fs7 fc0 sc0 ls0 ws0">another<span class="_ _e"> </span><span class="ff9">already<span class="_ _e"> </span>existing<span class="_ _8"> </span></span>object</div><div class="t m0 x1 hd y1d9 ffd fs8 fc8 sc0 ls0 ws0">#<span class="_ _14"> </span>include<span class="_ _43"> </span><span class="fc7">&lt;algorithm&gt;<span class="_ _30"> </span>//std::fill,<span class="_ _c"> </span>std::copy</span></div><div class="t m0 x1 hd y1da ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Array<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y1db ff5 fs8 fc4 sc0 ls0 ws0">char<span class="ffc fc6">*<span class="_"> </span><span class="fc0">array;</span></span></div><div class="t m0 x11 hd y1dc ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _2a"> </span><span class="ffc fc0">size;</span></div><div class="t m0 x11 hd y1dd ffc fs8 fc0 sc0 ls0 ws0">Array(<span class="ff5 fc4">int<span class="_"> </span></span>size1,<span class="_"> </span><span class="ff5 fc4">char<span class="_"> </span></span>value)<span class="_"> </span><span class="fc6">:<span class="_"> </span></span>size{size1}<span class="_"> </span>{</div><div class="t m0 x2b hd y1de ffc fs8 fc0 sc0 ls0 ws0">array<span class="_"> </span><span class="fc6">=<span class="_"> </span><span class="ff5 fc5">new<span class="_"> </span><span class="fc4">char</span></span></span>[size];</div><div class="t m0 x2b hd y1df ffc fs8 fc0 sc0 ls0 ws0">std<span class="fc6">::</span>fill(array,<span class="_"> </span>array<span class="_"> </span><span class="fc6">+<span class="_"> </span></span>size,<span class="_"> </span>value);</div><div class="t m0 x11 hd y1e0 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x11 hd y1e1 ff14 fs8 fc0 sc0 ls0 ws0"><span class="ffc">Array()<span class="_"> </span>{<span class="_"> </span><span class="ff5 fc5">delete</span>[]<span class="_"> </span>array;<span class="_"> </span>}</span></div><div class="t m0 x11 hd y1e2 ffc fs8 fc0 sc0 ls0 ws0">Array<span class="fc6">&amp;<span class="_"> </span><span class="ff5 fc5">operator</span>=</span>(<span class="ff5 fc5">const<span class="_"> </span></span>Array<span class="fc6">&amp;<span class="_"> </span></span>x)<span class="_"> </span>{<span class="_"> </span>....<span class="_"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>--&gt;<span class="_ _8"> </span>see<span class="_ _c"> </span>next<span class="_ _12"> </span>slide</span></div><div class="t m0 x1 hd y1e3 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y1e4 ffc fs8 fc0 sc0 ls0 ws0">Array<span class="_"> </span>a{<span class="fc6">5</span>,<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">o</span>&apos;</span>};<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>[&quot;ooooo&quot;]</span></div><div class="t m0 x1 hd y1e5 ffc fs8 fc0 sc0 ls0 ws0">Array<span class="_"> </span>b{<span class="fc6">3</span>,<span class="_"> </span><span class="ff18 fc9">&apos;<span class="ffc">b</span>&apos;</span>};<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>[&quot;bbb&quot;]</span></div><div class="t m0 x1 hd y1e6 ffc fs8 fc0 sc0 ls0 ws0"><span class="fcb sc0">a</span><span class="_"> </span><span class="fc6"><span class="fcb sc0">=</span><span class="_"> </span></span><span class="fcb sc0">b;</span><span class="_ _15"> </span><span class="ffd fc7"><span class="fcb sc0">//</span><span class="_ _8"> </span><span class="fcb sc0">a</span><span class="_ _8"> </span><span class="fcb sc0">=</span><span class="_ _c"> </span><span class="fcb sc0">[&quot;bbb&quot;]</span><span class="_ _12"> </span><span class="fcb sc0">&lt;--</span><span class="_ _c"> </span><span class="fcb sc0">goal</span></span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">50/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf37" class="pf w0 h0" data-page-no="37"><div class="pc pc37 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIjElEQVR42u3YsUlFQRCG0V25g9FiDQ8jKxAxFuzMJiznBRZhB0aPjZzkmr34YqCzcE4Fwx99TL9/fG4AAFDG58f5xgoAAFQjUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAuOqZaQUAAOqICJ9UAADKEakAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAFxtJjhuzmkEAGBRY4yFrvVJBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApJoAAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAGittZ6ZVgAAoI6I8EkFAKAckQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAAAsZTPBcXNOIwAAixpjLHStTyoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQDgN3pmWgEAgDoiwicVAIByRCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAA+F/b5e1kBQDgiK+XdyPwBx6eXnu/u90v363t+24QAABK+AEmxiAA0Mne+QAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Assignment<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator=<span class="_ _47"> </span></span>2/3</div><div class="t m0 xe hc y1e7 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">First<span class="_ _e"> </span>option:</span></div><div class="t m0 x7 hd y1e8 ffc fs8 fc0 sc0 ls0 ws0">Array<span class="fc6">&amp;<span class="_"> </span><span class="ff5 fc5">operator</span>=</span>(<span class="ff5 fc5">const<span class="_"> </span></span>Array<span class="fc6">&amp;<span class="_"> </span></span>x)<span class="_"> </span>{</div><div class="t m0 x2c hd y1e9 ff5 fs8 fc5 sc0 ls0 ws0">if<span class="_"> </span><span class="ffc fc0">(</span>this<span class="_"> </span><span class="ffc fc6">==<span class="_"> </span>&amp;<span class="fc0">x)<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>(1)<span class="_ _8"> </span>Check<span class="_ _c"> </span>for<span class="_ _12"> </span>self<span class="_ _c"> </span>assignment</span></span></span></div><div class="t m0 x20 hd y1ea ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc6">*</span>this<span class="ffc fc0">;</span></div><div class="t m0 x2c hd y1eb ff5 fs8 fc5 sc0 ls0 ws0">delete<span class="ffc fc0">[]<span class="_"> </span>array;<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>(2)<span class="_ _8"> </span>Release<span class="_ _c"> </span>class<span class="_ _12"> </span>resources</span></span></div><div class="t m0 x2c hd y1ec ffc fs8 fc0 sc0 ls0 ws0">size<span class="_ _1e"> </span><span class="fc6">=<span class="_"> </span></span>x.size;<span class="_ _27"> </span><span class="ffd fc7">//<span class="_ _8"> </span>(3)<span class="_ _8"> </span>Re-initialize<span class="_ _c"> </span>class<span class="_ _12"> </span>resources</span></div><div class="t m0 x2c hd y1ed ffc fs8 fc0 sc0 ls0 ws0">array<span class="_"> </span><span class="fc6">=<span class="_"> </span><span class="ff5 fc5">new<span class="_"> </span><span class="fc4">int</span></span></span>[x.size];</div><div class="t m0 x2c hd y1ee ffc fs8 fc0 sc0 ls0 ws0">std<span class="fc6">::</span>copy(x.array,<span class="_"> </span>x.array<span class="_"> </span><span class="fc6">+<span class="_"> </span></span>size,<span class="_"> </span>array);<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>(4)<span class="_ _8"> </span>deep<span class="_ _c"> </span>copy</span></div><div class="t m0 x2c hd y1ef ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc6">*</span>this<span class="ffc fc0">;</span></div><div class="t m0 x7 hd y1f0 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hc y1f1 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Second<span class="_ _e"> </span>option<span class="_ _e"> </span>(less<span class="_ _e"> </span>intuitive):</span></div><div class="t m0 x7 hd y1f2 ffc fs8 fc0 sc0 ls0 ws0">Array<span class="fc6">&amp;<span class="_"> </span><span class="ff5 fc5">operator</span>=</span>(Array<span class="_"> </span>x)<span class="_"> </span>{<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>pass<span class="_ _8"> </span>by-value</span></div><div class="t m0 x2c hd y1f3 ffc fs8 fc0 sc0 ls0 ws0">swap(<span class="fc6">*<span class="ff5 fc5">this</span></span>,<span class="_"> </span>x);<span class="_ _42"> </span><span class="ffd fc7">//<span class="_ _8"> </span>now<span class="_ _8"> </span>we<span class="_ _c"> </span>need<span class="_ _12"> </span>a<span class="_ _c"> </span>swap<span class="_ _12"> </span>function<span class="_ _c"> </span>for<span class="_ _12"> </span>A</span></div><div class="t m0 x2c hd y1f4 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc6">*</span>this<span class="ffc fc0">;<span class="_ _15"> </span><span class="ffd fc7">//<span class="_ _8"> </span>x<span class="_ _8"> </span>is<span class="_ _c"> </span>destroyed<span class="_ _12"> </span>at<span class="_ _c"> </span>the<span class="_ _12"> </span>end</span></span></div><div class="t m0 x7 hd y1f5 ffc fs8 fc0 sc0 ls0 ws0">}<span class="_ _3b"> </span><span class="ffd fc7">//<span class="_ _8"> </span>--&gt;<span class="_ _8"> </span>see<span class="_ _8"> </span>next<span class="_ _c"> </span>slide</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">51/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf38" class="pf w0 h0" data-page-no="38"><div class="pc pc38 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Assignment<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator=</span></div><div class="t m0 x2d h15 y1c5 ff6 fs5 fc1 sc0 ls0 ws0"></div><div class="t m0 x2e h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">3/3</div><div class="t m0 xd hc yba ff5 fs7 fc0 sc0 ls0 ws0">swap<span class="_ _22"> </span><span class="ff4">metho<span class="_ _b"></span>d:</span></div><div class="t m0 x1 hd y1f6 ff5 fs8 fc5 sc0 ls0 ws0">friend<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ffc fc3">swap<span class="fc0">(A<span class="fc6">&amp;<span class="_"> </span></span>x,<span class="_"> </span>A<span class="fc6">&amp;<span class="_"> </span></span>y)<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd y1f7 ff5 fs8 fc5 sc0 ls0 ws0">using<span class="_"> </span><span class="ffc fc0">std<span class="fc6">::</span>swap;</span></div><div class="t m0 x11 hd y1f8 ffc fs8 fc0 sc0 ls0 ws0">swap(x.size,<span class="_ _1e"> </span>y.size);</div><div class="t m0 x11 hd y1f9 ffc fs8 fc0 sc0 ls0 ws0">swap(x.array,<span class="_"> </span>y.array);</div><div class="t m0 x1 hd y1fa ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 xe hc y1fb ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff1">why<span class="_ _7"> </span>using<span class="_ _21"> </span><span class="ff5">std::swap<span class="_ _a"> </span></span>?<span class="_ _8"> </span><span class="ff4">if<span class="_ _22"> </span><span class="ffb">swap(x,<span class="_"> </span>y)<span class="_ _21"> </span></span>finds<span class="_ _e"> </span>a<span class="_ _e"> </span>b<span class="_ _b"></span>etter<span class="_ _e"> </span>match,<span class="_ _e"> </span>it<span class="_ _e"> </span>will<span class="_ _e"> </span>use<span class="_ _e"> </span>that</span></span></div><div class="t m0 x7 hc y1fc ff4 fs7 fc0 sc0 ls0 ws0">instead<span class="_ _e"> </span>of<span class="_ _22"> </span><span class="ffb">std::swap</span></div><div class="t m0 xe hc y1fd ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff1">why<span class="_ _21"> </span><span class="ff5">friend<span class="_ _a"> </span></span>?<span class="_ _8"> </span><span class="ff4">it<span class="_ _e"> </span>allows<span class="_ _a"> </span>the<span class="_ _e"> </span>function<span class="_ _e"> </span>to<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>used<span class="_ _7"> </span>from<span class="_ _a"> </span>outside<span class="_ _e"> </span>the<span class="_ _e"> </span>structure/class</span></span></div><div class="t m0 x7 hc y1fe ff4 fs7 fc0 sc0 ls0 ws0">scop<span class="_ _b"></span>e</div><div class="t m0 xe hd y1ff ffc fs8 fce sc0 ls0 ws0">stackoverflow.com/questions/3279543</div><div class="t m0 xe hd y200 ffc fs8 fce sc0 ls0 ws0">stackoverflow.com/questions/5695548</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">52/66</div><a class="l" href="stackoverflow.com/questions/3279543"><div class="d m1" style="border-style:none;position:absolute;left:34.722000px;bottom:17.471000px;width:166.750000px;height:11.656000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="stackoverflow.com/questions/5695548"><div class="d m1" style="border-style:none;position:absolute;left:35.403000px;bottom:3.080000px;width:166.750000px;height:12.000000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf39" class="pf w0 h0" data-page-no="39"><div class="pc pc39 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAId0lEQVR42u3YsQkCMRiG4UQuWB3OIFZOIGItuJlLOI6FQ7iB1XGVaWJnYyfK/QfPM0H40rz8ebM7JAAACON+uy6sAABANCIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAIC3XGu1AgAAcZRSXFIBAAhHpAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQCA/+hm9NZxHH0YAMB3+r6f0WtdUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkmAABApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAP5FrrVYAACCOUopLKgAA4YhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAATK0bzmsrAACTeBwvRuDTdn/KebVswzOl1ppBAAAI4QXFUxoChcRbKgAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Stream<span class="_ _12"> </span>Op<span class="_ _b"></span>erator<span class="_ _12"> </span><span class="ff5">operator«</span></div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span><span class="ff1">stream<span class="_ _7"> </span>op<span class="_ _b"></span>eration<span class="_ _e"> </span><span class="ffb fc3">operator«<span class="_ _e"> </span></span></span>can<span class="_ _e"> </span>b<span class="_ _b"></span>e<span class="_ _e"> </span>overloaded<span class="_ _e"> </span>to<span class="_ _e"> </span>p<span class="_ _b"></span>erform<span class="_ _a"> </span>input<span class="_ _e"> </span>and<span class="_ _e"> </span>output<span class="_ _e"> </span>for</div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">user-defined<span class="_ _e"> </span>t<span class="_ _3"></span>yp<span class="_ _b"></span>es</div><div class="t m0 x1 hd y18d ffd fs8 fc8 sc0 ls0 ws0">#<span class="_ _14"> </span>include<span class="_ _43"> </span><span class="fc7">&lt;iostream&gt;</span></div><div class="t m0 x1 hd y18f ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Point<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y190 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x,<span class="_"> </span>y;</span></div><div class="t m0 x11 hd y191 ff5 fs8 fc5 sc0 ls0 ws0">friend<span class="_"> </span><span class="ffc fc0">std<span class="fc6">::</span>ostream<span class="fc6">&amp;<span class="_"> </span></span></span>operator<span class="ffc fc6">&lt;&lt;<span class="fc0">(std</span>::<span class="fc0">ostream</span>&amp;<span class="_"> </span><span class="fc0">stream,</span></span></div><div class="t m0 x17 hd y192 ff5 fs8 fc5 sc0 ls0 ws0">const<span class="_"> </span><span class="ffc fc0">Point<span class="fc6">&amp;<span class="_ _1e"> </span></span>point)<span class="_"> </span>{</span></div><div class="t m0 x24 hd y193 ffc fs8 fc0 sc0 ls0 ws0">stream<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;(&quot;<span class="_"> </span></span>&lt;&lt;<span class="_"> </span></span>point.x<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;,&quot;<span class="_"> </span></span>&lt;&lt;<span class="_"> </span></span>point.y<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span><span class="fc9">&quot;)&quot;</span></span>;</div><div class="t m0 x24 hd y194 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">stream;</span></div><div class="t m0 x11 hd y195 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x11 hd y1af ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>operator&lt;&lt;<span class="_ _8"> </span>is<span class="_ _c"> </span>a<span class="_ _12"> </span>member<span class="_ _c"> </span>of<span class="_ _12"> </span>std::ostream<span class="_ _c"> </span>-&gt;<span class="_ _12"> </span>need<span class="_ _c"> </span>friend</div><div class="t m0 x1 hd y196 ffc fs8 fc0 sc0 ls0 ws0">};<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>implementation<span class="_ _8"> </span>and<span class="_ _c"> </span>definition<span class="_ _12"> </span>can<span class="_ _c"> </span>be<span class="_ _12"> </span>splitted<span class="_ _c"> </span>(not<span class="_ _12"> </span>suggested<span class="_ _c"> </span>for<span class="_ _12"> </span>operator&lt;&lt;)</span></div><div class="t m0 x1 hd y197 ffc fs8 fc0 sc0 ls0 ws0">Point<span class="_"> </span>point{<span class="fc6">1</span>,<span class="_"> </span><span class="fc6">2</span>};</div><div class="t m0 x1 hd y198 ffc fs8 fc0 sc0 ls0 ws0">std<span class="fc6">::</span>cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>point;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>print<span class="_ _8"> </span>&quot;(1,<span class="_ _c"> </span>2)&quot;</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">53/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf3a" class="pf w0 h0" data-page-no="3a"><div class="pc pc3a w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIl0lEQVR42u3ZsU3DUBSGUT/kKyqLGRAVdQoUUQdFLMYS7JKCFNkgDRtQRZYScRunYwCU4iY+Z4Ln/zWfntvTy2sHAABlfO+2d1YAAKAakQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAwJ+WmVYAAKCOiPCSCgBAOSIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCAFBZb4KbcTydFm/vt/p1+6+NKwaA+WiZaQUAAOqICL/7AQAoR6QCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAKC6/orOOo6jCwMA+J9hGK7otF5SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqSYAAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAMxAy0wrAABQR0R4SQUAoByRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAF9YfPh6tAAAU97P6NMJ8PC/XrT3cT4ffrpumySAAAJRwBo1JIwCnzSJ6AAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>rs<span class="_ _12"> </span>Precedence</div><div class="t m0 x1 hc yba ff4 fs7 fc0 sc0 ls0 ws0">Op<span class="_ _b"></span>erato<span class="_ _3"></span>rs<span class="_ _e"> </span>preserve<span class="_ _a"> </span><span class="ff1">precedence<span class="_ _a"> </span></span>and<span class="_ _e"> </span><span class="ff1">short-circuit<span class="_ _a"> </span></span>properties</div><div class="t m0 x1 hd y201 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">MyInt<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y202 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x;</span></div><div class="t m0 x11 hd y203 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">^<span class="fc0">(</span></span></span>int<span class="_"> </span><span class="ffc fc0">exp)<span class="_"> </span>{<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>exponential</span></span></div><div class="t m0 x24 hd y204 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">ret<span class="_"> </span><span class="fc6">=<span class="_"> </span>1</span>;</span></div><div class="t m0 x24 hd y205 ff5 fs8 fc5 sc0 ls0 ws0">for<span class="_"> </span><span class="ffc fc0">(</span><span class="fc4">int<span class="_"> </span><span class="ffc fc0">i<span class="_"> </span><span class="fc6">=<span class="_"> </span>0</span>;<span class="_"> </span>i<span class="_"> </span><span class="fc6">&lt;<span class="_"> </span></span>exp;<span class="_"> </span>i<span class="fc6">++</span>)</span></span></div><div class="t m0 x2f hd y206 ffc fs8 fc0 sc0 ls0 ws0">ret<span class="_"> </span><span class="fc6">*=<span class="_"> </span></span>x;</div><div class="t m0 x24 hd y207 ff5 fs8 fc5 sc0 ls0 ws0">return<span class="_"> </span><span class="ffc fc0">ret;</span></div><div class="t m0 x11 hd y208 ffc fs8 fc0 sc0 ls0 ws0">}</div><div class="t m0 x1 hd y209 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y20a ffc fs8 fc0 sc0 ls0 ws0">MyInt<span class="_"> </span>x{<span class="fc6">3</span>};</div><div class="t m0 x1 hd y20b ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _2a"> </span><span class="ffc fc0">y<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>x<span class="fc6">^2</span>;</span></div><div class="t m0 x1 hd y20c ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>y;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>9</span></div><div class="t m0 x1 hd y20d ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _2a"> </span><span class="ffc fc0">z<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>x<span class="fc6">^2<span class="_"> </span>+<span class="_"> </span>2</span>;</span></div><div class="t m0 x1 hd y20e ffc fs8 fc0 sc0 ls0 ws0">cout<span class="_"> </span><span class="fc6">&lt;&lt;<span class="_"> </span></span>z;<span class="_ _1e"> </span><span class="ffd fc7">//<span class="_ _8"> </span>81<span class="_ _8"> </span>!!!</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">54/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf3b" class="pf w0 h0" data-page-no="3b"><div class="pc pc3b w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAItklEQVR42u3ZoU0EQRiG4R2yf1ATaiCoq4AQgjhBgqSXKwJ1HVAEHSBA0AGGDlCXUfxmcWj2DLPL81Qw+415M1suLq8HAADoxsfb64kVAADojUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOBHyUwrAADQj4jwkgoAQHdEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEA4C+NJgBYjc3NdmVf9P7y7FrhfyqZaQUAAPoREX73AwDQHZEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAM40LOmtrzYUBAByn1rqg03pJBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApJoAAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgDAYowmYK77/d4Iv/e02xkBAOYqmbmUs7bWXBgAwHFqrUs5akT43Q8AQHdEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAQEdKZloBAIB+RISXVAAAuiNSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAsHbj4eHcCgDAanzePhph6TZXd6WcnU6Hr2GYpskgAAB04Rujzij+z5zamAAAAABJRU5ErkJggg=="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Bina<span class="_ _3"></span>ry<span class="_ _12"> </span>Op<span class="_ _b"></span>erators<span class="_ _7"> </span>Note</div><div class="t m0 x1 hc yba ff1 fs7 fc0 sc0 ls0 ws0">Bina<span class="_ _3"></span>ry<span class="_ _7"> </span>op<span class="_ _b"></span>erators<span class="_ _e"> </span>should<span class="_ _7"> </span>b<span class="_ _b"></span>e<span class="_ _7"> </span>implemented<span class="_ _7"> </span>as<span class="_ _7"> </span><span class="ff5">friend<span class="_ _7"> </span></span>metho<span class="_ _b"></span>ds</div><div class="t m0 x1 hd yf7 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ffc fc0">{};<span class="_"> </span></span></span>struct<span class="_"> </span><span class="fc3">C<span class="_"> </span><span class="ffc fc0">{};</span></span></div><div class="t m0 x1 hd yf9 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">B<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">A<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd y20f ff5 fs8 fc4 sc0 ls0 ws0">bool<span class="_"> </span><span class="fc5">operator<span class="ffc fc6">==<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">A<span class="fc6">&amp;<span class="_"> </span></span>x)<span class="_"> </span>{<span class="_"> </span></span>return<span class="_"> </span><span class="ffc">true<span class="fc0">;<span class="_"> </span>}</span></span></span></div><div class="t m0 x1 hd yfa ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yfb ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">D<span class="_"> </span><span class="ffc fc6">:<span class="_"> </span><span class="fc0">C<span class="_"> </span>{</span></span></span></div><div class="t m0 x11 hd yfc ff5 fs8 fc5 sc0 ls0 ws0">friend<span class="_"> </span><span class="fc4">bool<span class="_"> </span></span>operator<span class="ffc fc6">==<span class="fc0">(</span></span>const<span class="_"> </span><span class="ffc fc0">C<span class="fc6">&amp;<span class="_"> </span></span>x,<span class="_"> </span></span>const<span class="_"> </span><span class="ffc fc0">C<span class="fc6">&amp;<span class="_"> </span></span>y)<span class="_"> </span>{<span class="_"> </span></span>return<span class="_"> </span><span class="ffc">true<span class="fc0">;<span class="_"> </span>}<span class="_"> </span><span class="ffd fc7">//<span class="_ _8"> </span>inline</span></span></span></div><div class="t m0 x1 hd y210 ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd yfd ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>bool<span class="_ _8"> </span>operator==(const<span class="_ _c"> </span>C&amp;<span class="_ _12"> </span>x,<span class="_ _c"> </span>const<span class="_ _12"> </span>C&amp;<span class="_ _c"> </span>y)<span class="_ _12"> </span>{<span class="_ _c"> </span>return<span class="_ _12"> </span>true;<span class="_ _c"> </span>}<span class="_ _1"> </span>//<span class="_ _c"> </span>out-of-line</div><div class="t m0 x1 hd yff ffc fs8 fc0 sc0 ls0 ws0">A<span class="_"> </span>a;<span class="_ _1e"> </span>B<span class="_"> </span>b;<span class="_ _1e"> </span>C<span class="_"> </span>c;<span class="_"> </span>D<span class="_"> </span>d;</div><div class="t m0 x1 hd y211 ffc fs8 fc0 sc0 ls0 ws0">b<span class="_"> </span><span class="fc6">==<span class="_"> </span></span>a;<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span>ok</span></div><div class="t m0 x1 h10 y100 ffd fs8 fc7 sc0 ls0 ws0">//<span class="_ _8"> </span>a<span class="_ _8"> </span>==<span class="_ _c"> </span>b;<span class="_ _12"> </span>//<span class="_ _c"> </span><span class="ff12">compile<span class="_ _10"> </span>erro<span class="_ _3"></span>r<span class="_ _c"> </span><span class="ffd">//<span class="_ _12"> </span>&quot;A&quot;<span class="_ _c"> </span>does<span class="_ _12"> </span>not<span class="_ _c"> </span>have<span class="_ _12"> </span>==<span class="_ _c"> </span>operator</span></span></div><div class="t m0 x1 hd y101 ffc fs8 fc0 sc0 ls0 ws0">c<span class="_"> </span><span class="fc6">==<span class="_"> </span></span>d;<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span>ok,<span class="_ _8"> </span>use<span class="_ _c"> </span>operator==(const<span class="_ _12"> </span>C<span class="fff">&amp;</span>,<span class="_ _c"> </span>const<span class="_ _12"> </span>C<span class="fff">&amp;</span>)</span></div><div class="t m0 x1 hd y102 ffc fs8 fc0 sc0 ls0 ws0">d<span class="_"> </span><span class="fc6">==<span class="_"> </span></span>c;<span class="_ _1f"> </span><span class="ffd fc7">//<span class="_ _8"> </span>ok,<span class="_ _8"> </span>use<span class="_ _c"> </span>operator==(const<span class="_ _12"> </span>C<span class="fff">&amp;</span>,<span class="_ _c"> </span>const<span class="_ _12"> </span>C<span class="fff">&amp;</span>)</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">55/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf3c" class="pf w0 h0" data-page-no="3c"><div class="pc pc3c w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 xc h2 y156 ff1 fs0 fc0 sc0 ls0 ws0">C++<span class="_ _1"> </span>Object<span class="_ _1"> </span>La<span class="_ _5"></span>y<span class="_ _3"></span>out</div><div class="t m0 xc h13 y212 ff6 fs1 fc0 sc0 ls0 ws0"></div><a class="l" href="#pf3c" data-dest-detail='[60,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:149.618000px;width:241.993000px;height:24.025000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="#pf3c" data-dest-detail='[60,"XYZ",27.346,256.118,null]'><div class="d m1" style="border-style:none;position:absolute;left:105.775000px;bottom:120.066000px;width:22.006000px;height:25.291000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf3d" class="pf w0 h0" data-page-no="3d"><div class="pc pc3d w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Overview</div><div class="t m0 x1 hc y213 ff4 fs7 fc0 sc0 ls0 ws0">The<span class="_ _e"> </span>term<span class="_ _e"> </span><span class="ff1">la<span class="_ _3"></span>yout<span class="_ _a"> </span><span class="ff4">refers<span class="_ _e"> </span>to<span class="_ _e"> </span>how<span class="_ _a"> </span>an<span class="_ _e"> </span>object<span class="_ _e"> </span>is<span class="_ _e"> </span>arranged<span class="_ _a"> </span>in<span class="_ _e"> </span>memory</span></span></div><div class="t m0 x1 hc y214 ff4 fs7 fc0 sc0 ls0 ws0">C++<span class="_ _e"> </span>defines<span class="_ _e"> </span>four<span class="_ _e"> </span>t<span class="_ _3"></span>yp<span class="_ _b"></span>es<span class="_ _e"> </span>of<span class="_ _e"> </span><span class="ff9">lay<span class="_ _3"></span>outs<span class="_ _0"></span><span class="ff4">:</span></span></div><div class="t m0 xe hc y215 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ffb">aggregate</span></div><div class="t m0 xe hc y216 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ffb">trivial<span class="_"> </span>copyable</span></div><div class="t m0 xe hc y217 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ffb">standard<span class="_"> </span>layout</span></div><div class="t m0 xe hc y218 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ffb">plain-old<span class="_"> </span>data<span class="_"> </span>(POD)</span></div><div class="t m0 x1 hc y219 ff4 fs7 fc0 sc0 ls0 ws0">Such<span class="_ _e"> </span><span class="ff9">la<span class="_ _3"></span>youts<span class="_ _12"> </span><span class="ff4">a<span class="_ _3"></span>re<span class="_ _e"> </span>imp<span class="_ _b"></span>ortant<span class="_ _a"> </span>to<span class="_ _7"> </span>understand<span class="_ _a"> </span>how<span class="_ _a"> </span>the<span class="_ _e"> </span>C++<span class="_ _e"> </span>objects<span class="_ _e"> </span>interact<span class="_ _e"> </span>with<span class="_ _7"> </span>pure<span class="_ _a"> </span>C</span></span></div><div class="t m0 x1 hc y21a ff4 fs7 fc0 sc0 ls0 ws0">API<span class="_ _e"> </span>and<span class="_ _e"> </span>fo<span class="_ _3"></span>r<span class="_ _e"> </span>optimization<span class="_ _e"> </span>purp<span class="_ _b"></span>oses,<span class="_ _e"> </span>e.g.<span class="_ _c"> </span>pass<span class="_ _e"> </span>in<span class="_ _e"> </span>registers,<span class="_ _22"> </span><span class="ffb">memcpy<span class="_ _a"> </span></span>,<span class="_ _a"> </span>and<span class="_ _e"> </span>serialization</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">56/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf3e" class="pf w0 h0" data-page-no="3e"><div class="pc pc3e w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Aggregate<span class="_ _48"> </span>1/3</div><div class="t m0 xd hc yac ff1 fs7 fc1 sc0 ls0 ws0">Aggregate</div><div class="t m0 xd hc y158 ff4 fs7 fc0 sc0 ls0 ws0">An<span class="_ _e"> </span><span class="ff5 fcf">aggregate<span class="_ _10"> </span><span class="ff19 fs9"><span class="_ _e"> </span></span></span>is<span class="_ _e"> </span>an<span class="_ _e"> </span><span class="ffb">array</span>,<span class="_ _e"> </span><span class="ffb">struct</span>,<span class="_ _e"> </span>or<span class="_ _e"> </span><span class="ffb">class<span class="_ _e"> </span></span>which<span class="_ _e"> </span>supp<span class="_ _b"></span>orts<span class="_ _a"> </span><span class="ff9">aggregate</span></div><div class="t m0 xd hc y159 ff9 fs7 fc0 sc0 ls0 ws0">initialization<span class="_ _e"> </span><span class="ff4">(form<span class="_ _a"> </span>of<span class="_ _e"> </span>list-initialization)<span class="_ _e"> </span>through<span class="_ _e"> </span>curly<span class="_ _7"> </span>b<span class="_ _3"></span>races<span class="_ _e"> </span>syntax<span class="_ _7"> </span><span class="ffb">{}</span></span></div><div class="t m0 xe hc y21b ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _e"> </span><span class="ff9">user-p<span class="_ _3"></span>rovided<span class="_ _8"> </span><span class="ff4">constructors</span></span></span></div><div class="t m0 xe hc y21c ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _22"> </span><span class="ffb">private<span class="_ _a"> </span></span>/<span class="_ _11"> </span><span class="ffb">protected<span class="_ _21"> </span><span class="ff9">non</span></span>-<span class="_ _a"> </span><span class="ffb">static<span class="_ _22"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers<span class="_ _e"> </span>and<span class="_ _e"> </span><span class="ff9">base<span class="_ _12"> </span></span>class</span></div><div class="t m0 xe hc y21d ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _22"> </span><span class="ffb">virtual<span class="_ _21"> </span></span>functions</span></div><div class="t m0 x30 hc y21e ff4 fs7 fc0 sc0 ls0 ws0">*<span class="_"> </span>No<span class="_ _e"> </span>base<span class="_ _e"> </span>classes,<span class="_ _e"> </span>until<span class="_ _e"> </span><span class="fcd">C++17</span></div><div class="t m0 x30 hc y21f ff4 fs7 fc0 sc0 ls0 ws0">*<span class="_"> </span>No<span class="_ _e"> </span><span class="ff9">b<span class="_ _3"></span>race-or-equal-initializers<span class="_ _12"> </span><span class="ff4">fo<span class="_ _3"></span>r<span class="_ _e"> </span>non-static<span class="_ _e"> </span>data<span class="_ _e"> </span>memb<span class="_ _0"></span>ers,<span class="_ _a"> </span>until<span class="_ _e"> </span><span class="fcd">C++14</span></span></span></div><div class="t m0 x30 hc y220 ff5 fs7 fc0 sc0 ls0 ws0">R<span class="_ _6"> </span><span class="ff4">Apply<span class="_ _e"> </span>recursively<span class="_ _e"> </span>to<span class="_ _e"> </span><span class="ff9">base<span class="_ _12"> </span></span>classes<span class="_ _e"> </span><span class="ff9">non</span>-<span class="_ _a"> </span><span class="ffb">static<span class="_ _22"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</span></div><div class="t m0 x1 hc y221 ff4 fs7 fc0 sc0 ls0 ws0">No<span class="_ _e"> </span>restrictions:</div><div class="t m0 xe h6 y222 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">Non<span class="ff4">-<span class="_ _a"> </span><span class="ffb">static<span class="_ _43"> </span></span>uninitialized<span class="_ _a"> </span>(until<span class="_ _a"> </span><span class="fcd">C++14</span>)<span class="_ _a"> </span>data<span class="_ _a"> </span>and<span class="_ _a"> </span>function<span class="_ _a"> </span>memb<span class="_ _b"></span>ers</span></span></div><div class="t m0 xe h6 y223 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _26"> </span><span class="ffb">static<span class="_ _43"> </span><span class="ff4">data<span class="_ _a"> </span>and<span class="_ _a"> </span>function<span class="_ _a"> </span>memb<span class="_ _b"></span>ers</span></span></div><div class="t m0 xe hd y224 ffc fs8 fce sc0 ls0 ws0">stackoverflow.com/questions/4178175</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">57/66</div><a class="l" href="https://en.cppreference.com/w/cpp/language/aggregate_initialization"><div class="d m1" style="border-style:none;position:absolute;left:47.532000px;bottom:192.986000px;width:62.546000px;height:11.992000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="https://stackoverflow.com/questions/4178175/what-are-aggregates-and-trivial-types-pods-and-how-why-are-they-special"><div class="d m1" style="border-style:none;position:absolute;left:34.722000px;bottom:3.131000px;width:166.750000px;height:13.444000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf3f" class="pf w0 h0" data-page-no="3f"><div class="pc pc3f w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIeUlEQVR42u3YuwkCQRSG0RnZwWixBjGyAhFjwc5swnIMLMIOjJaNnGTMDAUfwV05p4Lhn+Tj5tVmlwAAIIzr5TyzAgAA0YhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACecq3VCgAAxFFKcUkFACAckQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAABv6ib01nEcfRgAwGf6vp/Qa11SAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqSYAAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSTQAAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAXsq1VisAABBHKcUlFQCAcEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAPyZbjgurQAA8L3b/mSEn1hvDzkv5m24p9RaMwgAACE8ADFrGgKY7L1rAAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Aggregate<span class="_ _12"> </span>-<span class="_ _12"> </span>Examples<span class="_ _49"> </span>2/3</div><div class="t m0 x1 hf y225 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Aggregate<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf y226 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">x;<span class="_ _4a"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>public<span class="_ _7"> </span>member</span></span></div><div class="t m0 x18 hf y227 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">y[<span class="fc6">3</span>];<span class="_ _32"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>arrays<span class="_ _7"> </span>are<span class="_ _12"> </span>also<span class="_ _7"> </span>fine</span></span></div><div class="t m0 x18 hf y228 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">z<span class="_ _12"> </span>{<span class="_ _7"> </span><span class="fc6">3<span class="_ _12"> </span></span>};<span class="_ _12"> </span><span class="ffd fc7">//<span class="_ _7"> </span>only<span class="_ _12"> </span>C++14</span></span></div><div class="t m0 x18 hf y229 ff11 fs5 fc0 sc0 ls0 ws0">Aggregate()<span class="_ _7"> </span><span class="fc6">=<span class="_ _12"> </span><span class="ff5 fc5">default</span></span>;<span class="_ _4b"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>defaulted<span class="_ _7"> </span>constructor</span></div><div class="t m0 x18 hf y22a ff11 fs5 fc0 sc0 ls0 ws0">Aggregate<span class="fc6">&amp;<span class="_ _7"> </span><span class="ff5 fc5">operator</span>=</span>(<span class="ff5 fc5">const</span><span class="fc6">&amp;<span class="_ _12"> </span></span>Aggregate);<span class="_ _26"> </span><span class="ffd fc7">//<span class="_ _12"> </span>ok,<span class="_ _7"> </span>function</span></div><div class="t m0 x1 hf y22b ff5 fs5 fc5 sc0 ls0 ws0">private<span class="ff11 fc6">:<span class="_ _4c"> </span><span class="ffd fc7">//<span class="_ _7"> </span>copy-assignment</span></span></div><div class="t m0 x18 hf y22c ff5 fs5 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ff11 fc0">f()<span class="_ _12"> </span>{}<span class="_ _3b"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _7"> </span>private<span class="_ _12"> </span>function</span></span></div><div class="t m0 x1 hf y22d ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf y22e ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">NotAggregate1<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf y22f ff11 fs5 fc0 sc0 ls0 ws0">NotAggregate1();<span class="_ _2f"> </span><span class="ffd fc7">//<span class="_ _7"> </span>!!<span class="_ _7"> </span>user-provided<span class="_ _12"> </span>constructor</span></div><div class="t m0 x18 hf y230 ff5 fs5 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">();<span class="_ _26"> </span><span class="ffd fc7">//<span class="_ _12"> </span>!!<span class="_ _7"> </span>virtual<span class="_ _12"> </span>function</span></span></span></span></div><div class="t m0 x1 hf y231 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf y232 ff5 fs5 fc5 sc0 ls0 ws0">class<span class="_"> </span><span class="fc3">NotAggregate2<span class="_"> </span><span class="ff11 fc6">:<span class="_ _12"> </span><span class="fc0">NotAggregate1<span class="_ _7"> </span>{<span class="_ _12"> </span><span class="ffd fc7">//<span class="_ _12"> </span>!!<span class="_ _7"> </span>the<span class="_ _12"> </span>base<span class="_ _7"> </span>class<span class="_ _12"> </span>is<span class="_ _7"> </span>not<span class="_ _12"> </span>an<span class="_ _7"> </span>aggregate</span></span></span></span></div><div class="t m0 x18 hf y233 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_ _31"> </span><span class="ff11 fc0">x;<span class="_ _2f"> </span><span class="ffd fc7">//<span class="_ _7"> </span>!!<span class="_ _7"> </span>x<span class="_ _12"> </span>is<span class="_ _7"> </span>private</span></span></div><div class="t m0 x18 hf y234 ff11 fs5 fc0 sc0 ls0 ws0">NotAggregate1<span class="_ _7"> </span>y;<span class="_ _2f"> </span><span class="ffd fc7">//<span class="_ _7"> </span>!!<span class="_ _12"> </span>y<span class="_ _7"> </span>is<span class="_ _12"> </span>not<span class="_ _7"> </span>an<span class="_ _12"> </span>aggregate<span class="_ _12"> </span>(recursive<span class="_ _7"> </span>property)</span></div><div class="t m0 x1 hf y235 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">58/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf40" class="pf w0 h0" data-page-no="40"><div class="pc pc40 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIdklEQVR42u3YsQlCMRSG0Rd5werhDGLlBCLWgpu5hONYOIQbWD1SmSZ2lhYWciPnTBD+NB83bXaHAQAAwrjfrgsrAAAQjUgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAOAt1VqtAABAHDlnl1QAAMIRqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAEBXxo7eWkrxYQAA35mmqaPXuqQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSTQAAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUA4G+kWqsVAACII+fskgoAQDgiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAAA6Mc7ntRUAAH7pcbwY4YPt/pTSatnm5zC01gwCAEAIL1eKGgLhTyW3AAAAAElFTkSuQmCC"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Aggregate<span class="_ _12"> </span>-<span class="_ _12"> </span>Examples<span class="_ _49"> </span>3/3</div><div class="t m0 x1 hd y236 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Aggregate1<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x11 hd y237 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">x;</span></div><div class="t m0 x11 hd y238 ff5 fs8 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Aggregate2<span class="_"> </span><span class="ffc fc0">{</span></span></div><div class="t m0 x24 hd y239 ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">a;</span></div><div class="t m0 x24 hd y23a ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ffc fc0">b[<span class="fc6">3</span>];</span></div><div class="t m0 x11 hd y23b ffc fs8 fc0 sc0 ls0 ws0">}<span class="_"> </span>y;</div><div class="t m0 x1 hd y23c ffc fs8 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hd y23d ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _24"> </span><span class="ffc fc0">array1[<span class="fc6">3</span>]<span class="_"> </span><span class="fc6">=<span class="_"> </span></span>{<span class="fc6">1</span>,<span class="_"> </span><span class="fc6">2</span>,<span class="_"> </span><span class="fc6">3</span>};</span></div><div class="t m0 x1 hd y23e ff5 fs8 fc4 sc0 ls0 ws0">int<span class="_ _24"> </span><span class="ffc fc0">array2[<span class="fc6">3</span>]<span class="_ _2a"> </span>{<span class="fc6">1</span>,<span class="_"> </span><span class="fc6">2</span>,<span class="_"> </span><span class="fc6">3</span>};</span></div><div class="t m0 x1 hd y23f ffc fs8 fc0 sc0 ls0 ws0">Aggregate1<span class="_"> </span>agg1<span class="_ _36"> </span><span class="fc6">=<span class="_"> </span></span>{<span class="fc6">1</span>,<span class="_"> </span>{<span class="fc6">2</span>,<span class="_"> </span>{<span class="fc6">3</span>,<span class="_"> </span><span class="fc6">4</span>,<span class="_"> </span><span class="fc6">5</span>}}};</div><div class="t m0 x1 hd y240 ffc fs8 fc0 sc0 ls0 ws0">Aggregate1<span class="_"> </span>agg2<span class="_ _24"> </span>{<span class="fc6">1</span>,<span class="_"> </span>{<span class="fc6">2</span>,<span class="_"> </span>{<span class="fc6">3</span>,<span class="_"> </span><span class="fc6">4</span>,<span class="_"> </span><span class="fc6">5</span>}}};</div><div class="t m0 x1 hd y241 ffc fs8 fc0 sc0 ls0 ws0">Aggregate1<span class="_"> </span>agg3<span class="_ _36"> </span><span class="fc6">=<span class="_"> </span></span>{<span class="fc6">1</span>,<span class="_"> </span><span class="fc6">2</span>,<span class="_"> </span><span class="fc6">3</span>,<span class="_"> </span><span class="fc6">4</span>,<span class="_"> </span><span class="fc6">5</span>};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">59/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf41" class="pf w0 h0" data-page-no="41"><div class="pc pc41 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _d"></span>rivial<span class="_ _8"> </span>Class<span class="_ _4d"> </span>1/2</div><div class="t m0 xd hc y242 ff1 fs7 fc1 sc0 ls0 ws0">T<span class="_ _5"></span>rivial<span class="_ _7"> </span>Class</div><div class="t m0 xd hc y243 ff4 fs7 fc0 sc0 ls0 ws0">A<span class="_ _e"> </span><span class="ff5 fcf">Trivial<span class="_"> </span>Class<span class="_ _10"> </span><span class="ff19 fs9"><span class="_ _e"> </span></span></span>is<span class="_ _e"> </span>a<span class="_ _e"> </span><span class="ffb">class<span class="_ _e"> </span><span class="ff5 fcf">trivial<span class="_"> </span>copyable<span class="_ _a"> </span><span class="ff19 fs9"><span class="_ _a"> </span></span></span></span>(supp<span class="_ _0"></span>o<span class="_ _3"></span>rts<span class="_ _e"> </span><span class="ffb">memcpy</span>)</div><div class="t m0 x1 hc y244 ff4 fs7 fc0 sc0 ls0 ws0">T<span class="_ _5"></span>rivial<span class="_ _e"> </span>copy<span class="_ _3"></span>able:</div><div class="t m0 xe hc y245 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _e"> </span><span class="ff9">user-p<span class="_ _3"></span>rovided<span class="_ _8"> </span><span class="ff4">copy/move/default<span class="_ _a"> </span></span>constructors<span class="ff4">,<span class="_ _e"> </span></span>destructo<span class="_ _3"></span>r<span class="ff4">,<span class="_ _e"> </span>and<span class="_ _e"> </span>copy/move</span></span></span></div><div class="t m0 x7 hc y246 ff9 fs7 fc0 sc0 ls0 ws0">assignment<span class="_ _12"> </span><span class="ff4">op<span class="_ _b"></span>erators</span></div><div class="t m0 xe hc y247 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _22"> </span><span class="ffb">virtual<span class="_ _21"> </span></span>functions</span></div><div class="t m0 x30 hc y248 ff5 fs7 fc0 sc0 ls0 ws0">R<span class="_ _6"> </span><span class="ff4">Apply<span class="_ _e"> </span>recursively<span class="_ _e"> </span>to<span class="_ _e"> </span><span class="ff9">base<span class="_ _12"> </span></span>classes<span class="_ _e"> </span>and<span class="_ _e"> </span><span class="ff9">non</span>-<span class="_ _a"> </span><span class="ffb">static<span class="_ _22"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</span></div><div class="t m0 x1 hc y249 ff4 fs7 fc0 sc0 ls0 ws0">No<span class="_ _e"> </span>restrictions:</div><div class="t m0 xe h6 y24a ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff9">User-declare<span class="_ _3"></span>d<span class="_ _12"> </span><span class="ff4">constructors<span class="_ _a"> </span>different<span class="_ _a"> </span>from<span class="_ _a"> </span>cop<span class="_ _3"></span>y/move/default</span></span></div><div class="t m0 xe h6 y24b ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Functions<span class="_ _10"> </span>or<span class="_ _43"> </span><span class="ffb">static<span class="_ _10"> </span></span>,<span class="ff9">non<span class="_ _b"></span></span>-<span class="_ _10"> </span><span class="ffb">static<span class="_ _43"> </span></span>data<span class="_ _a"> </span>memb<span class="_ _b"></span>ers<span class="_ _a"> </span>initialization</span></div><div class="t m0 xe h6 y24c ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _26"> </span><span class="ffb">protected<span class="_ _10"> </span><span class="ff4">/<span class="_ _10"> </span></span>private<span class="_ _22"> </span><span class="ff4">memb<span class="_ _b"></span>ers</span></span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">60/66</div><a class="l" href="https://en.cppreference.com/w/cpp/language/classes"><div class="d m1" style="border-style:none;position:absolute;left:41.896000px;bottom:185.250000px;width:85.455000px;height:12.754000px;background-color:rgba(255,255,255,0.000001);"></div></a><a class="l" href="https://en.cppreference.com/w/cpp/language/classes#Trivially_copyable_class"><div class="d m1" style="border-style:none;position:absolute;left:180.570000px;bottom:185.250000px;width:102.637000px;height:12.754000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf42" class="pf w0 h0" data-page-no="42"><div class="pc pc42 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA4wAAAH/CAIAAACTgcSzAAAACXBIWXMAABYlAAAWJQFJUiTwAAAIeElEQVR42u3YsQlCMRCA4Yu8YPVwBrFyAhFrwc1cwnEsHMINrB6vMk1sRLC1SuT7Jkjump9Lm90hAACgGffbdWEKAAC0RqQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAPCRSimmAABAO3LOLqkAADRHpAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAAF+Gjt46z7OFAQD8ZhzHjl7rkgoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEg1AgAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQBApAIAIFIBAECkAgAgUgEAQKQCACBSAQBApAIAIFIBAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAiFQAABCpAAAQERGplGIKAAC0I+fskgoAQHNEKgAAIhUAAEQqAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAACIVAAARCoAAIhUAABEKgAAiFQAAEQqAACIVAAARCoAAIhUAAAQqQAAiFQAABCpAACIVAAAEKkAAIhUAAAQqQAAIFIBABCpAAAgUgEAEKkAACBSAQAQqQAAIFIBABCpAAAgUgEAQKQCACBSAQBApAIAIFIBAECkAgAgUgEAQKQCAIBIBQBApAIAgEgFAECkAgCASAUAQKQCAIBIBQBApAIAgEgFAACRCgCASAUAAJEKAIBIBQAAkQoAgEgFAACRCgAAIhUAAJEKAAAiFQAAkQoAACIVAACRCgAAIhUAAJEKAAAiFQAARCoAACIVAABEKgAAIhUAAEQqAAAiFQAARCoAALwN03ltCgAAXXscL//0ne3+lNJqWadnRK3VfgEAaMILRMgaAp392JsAAAAASUVORK5CYII="/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">T<span class="_ _d"></span>rivial<span class="_ _8"> </span>Class<span class="_ _12"> </span>-<span class="_ _12"> </span>Examples<span class="_ _4e"> </span>2/2</div><div class="t m0 x1 hf y24d ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">NonTrivial<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf y24e ff11 fs5 fc0 sc0 ls0 ws0">NonTrivial();<span class="_ _33"> </span><span class="ffd fc7">//<span class="_ _7"> </span>!!<span class="_ _7"> </span>user-provided<span class="_ _12"> </span>constructor</span></div><div class="t m0 x18 hf y24f ff5 fs5 fc5 sc0 ls0 ws0">virtual<span class="_"> </span><span class="fc4">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">();<span class="_ _12"> </span><span class="ffd fc7">//<span class="_ _7"> </span>!!<span class="_ _12"> </span>virtual<span class="_ _7"> </span>function</span></span></span></span></div><div class="t m0 x1 hf y250 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf y251 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Trivial1<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf y252 ff11 fs5 fc0 sc0 ls0 ws0">Trivial1()<span class="_ _7"> </span><span class="fc6">=<span class="_ _12"> </span><span class="ff5 fc5">default</span></span>;<span class="_ _32"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>defaulted<span class="_ _7"> </span>constructor</span></div><div class="t m0 x18 hf y253 ff11 fs5 fc0 sc0 ls0 ws0">Trivial1(<span class="ff5 fc4">int</span>)<span class="_ _7"> </span>{}<span class="_ _4f"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>user-default<span class="_ _7"> </span>constructor</span></div><div class="t m0 x18 hf y254 ff5 fs5 fc5 sc0 ls0 ws0">static<span class="_"> </span><span class="fc4">int<span class="_"> </span><span class="ff11 fc0">x;<span class="_ _50"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>static<span class="_ _7"> </span>member</span></span></span></div><div class="t m0 x18 hf y255 ff5 fs5 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">();<span class="_ _51"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>function</span></span></span></div><div class="t m0 x1 hf y256 ff5 fs5 fc5 sc0 ls0 ws0">private<span class="ff11 fc6">:</span></div><div class="t m0 x18 hf y257 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">z<span class="_ _12"> </span>{<span class="_ _7"> </span><span class="fc6">3<span class="_ _12"> </span></span>}<span class="_ _52"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>private<span class="_ _7"> </span>and<span class="_ _12"> </span>initialized</span></span></div><div class="t m0 x1 hf y258 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf y259 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">Trivial2<span class="_"> </span><span class="ff11 fc6">:<span class="_ _12"> </span><span class="fc0">Trivial1<span class="_ _7"> </span>{<span class="_ _12"> </span><span class="ffd fc7">//<span class="_ _12"> </span>ok,<span class="_ _7"> </span>base<span class="_ _12"> </span>class<span class="_ _7"> </span>is<span class="_ _12"> </span>trivial</span></span></span></span></div><div class="t m0 x18 hf y25a ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">Trivial1[<span class="fc6">3</span>];<span class="_ _4f"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _7"> </span>array<span class="_ _12"> </span>of<span class="_ _7"> </span>trivials<span class="_ _12"> </span>is<span class="_ _7"> </span>trivial</span></span></div><div class="t m0 x1 hf y25b ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">61/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf43" class="pf w0 h0" data-page-no="43"><div class="pc pc43 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Standa<span class="_ _3"></span>rd-La<span class="_ _3"></span>yout<span class="_ _7"> </span>Class<span class="_ _53"> </span>1/2</div><div class="t m0 xd hc y25c ff1 fs7 fc1 sc0 ls0 ws0">Standa<span class="_ _3"></span>rd-Lay<span class="_ _3"></span>out</div><div class="t m0 xd hc y25d ff4 fs7 fc0 sc0 ls0 ws0">A<span class="_ _e"> </span><span class="ff5 fcf">standard-layout<span class="_"> </span>class<span class="_ _10"> </span><span class="ff19 fs9"><span class="_ _e"> </span></span></span>is<span class="_ _e"> </span>a<span class="_ _e"> </span>class<span class="_ _e"> </span>with<span class="_ _e"> </span>the<span class="_ _e"> </span>same<span class="_ _e"> </span>memory<span class="_ _e"> </span>la<span class="_ _3"></span>yout<span class="_ _a"> </span>of<span class="_ _e"> </span>the</div><div class="t m0 xd hc y25e ff4 fs7 fc0 sc0 ls0 ws0">equivalent<span class="_ _e"> </span>C<span class="_ _e"> </span><span class="ffb">struct<span class="_ _e"> </span></span>o<span class="_ _3"></span>r<span class="_ _7"> </span><span class="ffb">union<span class="_ _e"> </span></span>(useful<span class="_ _e"> </span>fo<span class="_ _3"></span>r<span class="_ _e"> </span>communicating<span class="_ _e"> </span>with<span class="_ _e"> </span>other<span class="_ _e"> </span>languages)</div><div class="t m0 xe hc y25f ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _22"> </span><span class="ffb">virtual<span class="_ _21"> </span></span>functions</span></div><div class="t m0 xe hc y260 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">Only<span class="_ _e"> </span>one<span class="_ _e"> </span>control<span class="_ _e"> </span>access<span class="_ _e"> </span>(<span class="_ _10"> </span><span class="ffb">public<span class="_ _a"> </span></span>/<span class="_ _11"> </span><span class="ffb">protected<span class="_ _a"> </span></span>/<span class="_ _10"> </span><span class="ffb">private<span class="_ _10"> </span></span>)<span class="_ _e"> </span>for<span class="_ _a"> </span>all<span class="_ _e"> </span><span class="ff9">non<span class="_ _b"></span></span>-<span class="_ _10"> </span><span class="ffb">static</span></span></div><div class="t m0 x7 hc y261 ff4 fs7 fc0 sc0 ls0 ws0">data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</div><div class="t m0 xe hc y262 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _e"> </span>base<span class="_ _e"> </span>classes<span class="_ _e"> </span>with<span class="_ _e"> </span><span class="ff9">non<span class="_"> </span></span>-<span class="_ _a"> </span><span class="ffb">static<span class="_ _22"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</span></div><div class="t m0 xe hc y263 ffa fs7 fc0 sc0 ls0 ws0"><span class="_ _6"> </span><span class="ff4">No<span class="_ _e"> </span>base<span class="_ _e"> </span>classes<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span>same<span class="_ _e"> </span>type<span class="_ _e"> </span>as<span class="_ _e"> </span>the<span class="_ _e"> </span>first<span class="_ _e"> </span><span class="ff9">non<span class="_ _b"></span></span>-<span class="_ _10"> </span><span class="ffb">static<span class="_ _21"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>er</span></div><div class="t m0 x30 hc y264 ff5 fs7 fc0 sc0 ls0 ws0">R<span class="_ _6"> </span><span class="ff4">Apply<span class="_ _e"> </span>recursively<span class="_ _e"> </span>to<span class="_ _e"> </span><span class="ff9">base<span class="_ _12"> </span></span>classes<span class="_ _e"> </span>and<span class="_ _e"> </span><span class="ff9">non</span>-<span class="_ _a"> </span><span class="ffb">static<span class="_ _22"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">62/66</div><a class="l" href="https://en.cppreference.com/w/cpp/language/classes#Standard-layout_class"><div class="d m1" style="border-style:none;position:absolute;left:41.896000px;bottom:190.676000px;width:131.273000px;height:11.931000px;background-color:rgba(255,255,255,0.000001);"></div></a></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf44" class="pf w0 h0" data-page-no="44"><div class="pc pc44 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Standa<span class="_ _3"></span>rd-La<span class="_ _3"></span>yout<span class="_ _7"> </span>Class<span class="_ _12"> </span><span class="fs4">(examples)<span class="_ _54"> </span></span>2/2</div><div class="t m0 x1 hf y265 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">StandardLayout1<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf y24f ff11 fs5 fc0 sc0 ls0 ws0">StandardLayout1();<span class="_ _7"> </span><span class="ffd fc7">//<span class="_ _12"> </span>ok,<span class="_ _7"> </span>user-provided<span class="_ _12"> </span>contructor</span></div><div class="t m0 x18 hf y250 ff5 fs5 fc4 sc0 ls0 ws0">void<span class="_"> </span><span class="ff11 fc3">f<span class="fc0">();<span class="_ _42"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>non-virtual<span class="_ _7"> </span>function</span></span></span></div><div class="t m0 x1 hf y266 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf y252 ff5 fs5 fc5 sc0 ls0 ws0">class<span class="_"> </span><span class="fc3">StandardLayout2<span class="_"> </span><span class="ff11 fc6">:<span class="_ _12"> </span><span class="fc0">StandardLayout1<span class="_ _7"> </span>{</span></span></span></div><div class="t m0 x18 hf y253 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">x,<span class="_ _12"> </span>y;<span class="_ _42"> </span><span class="ffd fc7">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>both<span class="_ _7"> </span>are<span class="_ _12"> </span>private</span></span></div><div class="t m0 x18 hf y254 ff11 fs5 fc0 sc0 ls0 ws0">StandardLayout1<span class="_ _7"> </span>y;<span class="_ _12"> </span><span class="ffd fc7">//<span class="_ _12"> </span>ok,<span class="_ _7"> </span><span class="ff10">&apos;</span>y<span class="ff10">&apos;<span class="_ _12"> </span></span>is<span class="_ _7"> </span>not<span class="_ _12"> </span>the<span class="_ _7"> </span>first<span class="_ _12"> </span>data<span class="_ _7"> </span>member</span></div><div class="t m0 x1 hf y255 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf y257 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">StandardLayout4<span class="_"> </span><span class="ff11 fc6">:<span class="_ _12"> </span><span class="fc0">StandardLayout1,<span class="_ _7"> </span>StandardLayout2<span class="_ _12"> </span>{</span></span></span></div><div class="t m0 x18 hf y258 ffd fs5 fc7 sc0 ls0 ws0">//<span class="_ _7"> </span>ok,<span class="_ _12"> </span>can<span class="_ _7"> </span>use<span class="_ _12"> </span>multiple<span class="_ _7"> </span>inheritance<span class="_ _12"> </span>as<span class="_ _7"> </span>long<span class="_ _12"> </span>as<span class="_ _7"> </span>only</div><div class="t m0 x18 hf y259 ffd fs5 fc7 sc0 ls0 ws0">//<span class="_ _7"> </span>one<span class="_ _12"> </span>class<span class="_ _7"> </span>in<span class="_ _12"> </span>the<span class="_ _7"> </span>hierarchy<span class="_ _12"> </span>has<span class="_ _7"> </span>non-static<span class="_ _12"> </span>data<span class="_ _7"> </span>members</div><div class="t m0 x1 hf y25a ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">63/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf45" class="pf w0 h0" data-page-no="45"><div class="pc pc45 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Plain<span class="_ _12"> </span>Old<span class="_ _12"> </span>Data<span class="_ _12"> </span>(POD)</div><div class="t m0 x1 hc yba ff1 fs7 fc0 sc0 ls0 ws0">Plain<span class="_ _7"> </span>Old<span class="_ _7"> </span>Data<span class="_ _7"> </span>(POD)<span class="ff4">:<span class="_ _a"> </span>T<span class="_ _3"></span>rivial<span class="_ _a"> </span>copy<span class="_ _3"></span>able<span class="_ _e"> </span>(<span class="ff1">T</span>)<span class="_ _e"> </span>+<span class="_ _e"> </span>Standa<span class="_ _3"></span>rd-Lay<span class="_ _3"></span>out<span class="_ _e"> </span>(<span class="ff1">S</span>)</span></div><div class="t m0 x1 hc y267 ff4 fs7 fc0 sc0 ls0 ws0">(<span class="ff1">T</span>)<span class="_"> </span>No<span class="_ _e"> </span><span class="ff9">user-p<span class="_ _3"></span>rovided<span class="_ _8"> </span><span class="ff4">copy/move/default<span class="_ _a"> </span></span>constructors<span class="ff4">,<span class="_ _a"> </span></span>destructor<span class="ff4">,<span class="_ _a"> </span>and<span class="_ _7"> </span>cop<span class="_ _3"></span>y/move</span></span></div><div class="t m0 x7 hc y268 ff9 fs7 fc0 sc0 ls0 ws0">assignment<span class="_ _12"> </span><span class="ff4">op<span class="_ _b"></span>erators</span></div><div class="t m0 x31 hc y269 ff4 fs7 fc0 sc0 ls0 ws0">(<span class="ff1">S</span>)<span class="_"> </span>Only<span class="_ _e"> </span>one<span class="_ _e"> </span>control<span class="_ _e"> </span>access<span class="_ _e"> </span>(<span class="_ _10"> </span><span class="ffb">public<span class="_ _10"> </span></span>/<span class="_ _a"> </span><span class="ffb">protected<span class="_ _10"> </span></span>/<span class="_ _10"> </span><span class="ffb">private<span class="_ _10"> </span></span>)<span class="_ _e"> </span>for<span class="_ _a"> </span>all<span class="_ _7"> </span><span class="ff9">non</span>-<span class="_ _10"> </span><span class="ffb">static</span></div><div class="t m0 x7 hc y26a ff4 fs7 fc0 sc0 ls0 ws0">data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</div><div class="t m0 x31 hc y26b ff4 fs7 fc0 sc0 ls0 ws0">(<span class="ff1">S</span>)<span class="_"> </span>No<span class="_ _e"> </span>base<span class="_ _e"> </span>classes<span class="_ _e"> </span>with<span class="_ _e"> </span><span class="ff9">non</span>-<span class="_ _a"> </span><span class="ffb">static<span class="_ _22"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</div><div class="t m0 x31 hc y26c ff4 fs7 fc0 sc0 ls0 ws0">(<span class="ff1">S</span>)<span class="_"> </span>No<span class="_ _e"> </span>base<span class="_ _e"> </span>classes<span class="_ _e"> </span>of<span class="_ _e"> </span>the<span class="_ _e"> </span>same<span class="_ _e"> </span>type<span class="_ _e"> </span>as<span class="_ _e"> </span>the<span class="_ _e"> </span>first<span class="_ _e"> </span><span class="ff9">non<span class="_ _b"></span></span>-<span class="_ _10"> </span><span class="ffb">static<span class="_ _21"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>er</div><div class="t m0 x32 hc y26d ff4 fs7 fc0 sc0 ls0 ws0">(<span class="ff1">T,<span class="_ _7"> </span>S</span>)<span class="_"> </span>No<span class="_ _22"> </span><span class="ffb">virtual<span class="_ _22"> </span></span>functions</div><div class="t m0 x30 hc y26e ff5 fs7 fc0 sc0 ls0 ws0">R<span class="_ _6"> </span><span class="ff4">Apply<span class="_ _e"> </span>recursively<span class="_ _e"> </span>to<span class="_ _e"> </span><span class="ff9">base<span class="_ _12"> </span></span>classes<span class="_ _e"> </span>and<span class="_ _e"> </span><span class="ff9">non</span>-<span class="_ _a"> </span><span class="ffb">static<span class="_ _22"> </span></span>data<span class="_ _e"> </span>memb<span class="_ _b"></span>ers</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">64/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf46" class="pf w0 h0" data-page-no="46"><div class="pc pc46 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">C++<span class="_ _12"> </span><span class="ff5">std<span class="_ _12"> </span></span>Utilities</div><div class="t m0 x1 hc yba ff4 fs7 fcd sc0 ls0 ws0">C++11<span class="_ _e"> </span><span class="fc0">p<span class="_ _3"></span>rovides<span class="_ _e"> </span>three<span class="_ _e"> </span>utilities<span class="_ _e"> </span>to<span class="_ _e"> </span>check<span class="_ _e"> </span>if<span class="_ _e"> </span>a<span class="_ _7"> </span>t<span class="_ _3"></span>yp<span class="_ _b"></span>e<span class="_ _e"> </span>is<span class="_ _e"> </span>POD,<span class="_ _e"> </span>T<span class="_ _5"></span>rivial<span class="_ _e"> </span>Copy<span class="_ _3"></span>able,</span></div><div class="t m0 x1 hc ybb ff4 fs7 fc0 sc0 ls0 ws0">Standa<span class="_ _3"></span>rd-Lay<span class="_ _3"></span>out</div><div class="t m0 xe h6 y26f ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _26"> </span><span class="ffb fc3">std::is_pod<span class="_ _43"> </span></span><span class="ff4">checks<span class="_ _a"> </span>for<span class="_ _a"> </span>POD,<span class="_ _a"> </span>dep<span class="_ _3"></span>recated<span class="_ _a"> </span>in<span class="_ _a"> </span><span class="fcd">C++20</span></span></div><div class="t m0 xe h6 y270 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _26"> </span><span class="ffb fc3">std::is_trivially_copyable<span class="_ _43"> </span></span><span class="ff4">checks<span class="_ _a"> </span>for<span class="_ _a"> </span>trivial<span class="_ _a"> </span>cop<span class="_ _3"></span>yable</span></div><div class="t m0 xe h6 y271 ffa fs4 fc0 sc0 ls0 ws0"><span class="_ _26"> </span><span class="ffb fc3">std::is_standard_layout<span class="_ _43"> </span></span><span class="ff4">checks<span class="_ _a"> </span>for<span class="_ _a"> </span>standa<span class="_ _3"></span>rd-la<span class="_ _3"></span>yout</span></div><div class="t m0 x1 hf y272 ffd fs5 fc8 sc0 ls0 ws0">#<span class="_ _14"> </span>include<span class="_ _6"> </span><span class="fc7">&lt;type_traits&gt;</span></div><div class="t m0 x1 hf y273 ff5 fs5 fc5 sc0 ls0 ws0">struct<span class="_"> </span><span class="fc3">A<span class="_"> </span><span class="ff11 fc0">{</span></span></div><div class="t m0 x18 hf y274 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">x;</span></div><div class="t m0 x1 hf y275 ff5 fs5 fc5 sc0 ls0 ws0">private<span class="ff11 fc6">:</span></div><div class="t m0 x18 hf y276 ff5 fs5 fc4 sc0 ls0 ws0">int<span class="_"> </span><span class="ff11 fc0">y;</span></div><div class="t m0 x1 hf y277 ff11 fs5 fc0 sc0 ls0 ws0">};</div><div class="t m0 x1 hf y278 ff11 fs5 fc0 sc0 ls0 ws0">cout<span class="_ _7"> </span><span class="fc6">&lt;&lt;<span class="_ _12"> </span></span>std<span class="fc6">::</span>is_trivially_copyable_v<span class="fc6">&lt;</span>A<span class="fc6">&gt;</span>;<span class="_ _12"> </span><span class="ffd fc7">//<span class="_ _7"> </span>true</span></div><div class="t m0 x1 hf y279 ff11 fs5 fc0 sc0 ls0 ws0">cout<span class="_ _7"> </span><span class="fc6">&lt;&lt;<span class="_ _12"> </span></span>std<span class="fc6">::</span>is_standard_layout_v<span class="fc6">&lt;</span>A<span class="fc6">&gt;</span>;<span class="_ _32"> </span><span class="ffd fc7">//<span class="_ _7"> </span>false</span></div><div class="t m0 x1 hf y27a ff11 fs5 fc0 sc0 ls0 ws0">cout<span class="_ _7"> </span><span class="fc6">&lt;&lt;<span class="_ _12"> </span></span>std<span class="fc6">::</span>is_pod_v<span class="fc6">&lt;</span>A<span class="fc6">&gt;</span>;<span class="_ _51"> </span><span class="ffd fc7">//<span class="_ _7"> </span>false</span></div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">65/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
<div id="pf47" class="pf w0 h0" data-page-no="47"><div class="pc pc47 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="data:image/png;base64,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"/><div class="t m0 x5 h7 y8 ff1 fs3 fc1 sc0 ls0 ws0">Object<span class="_ _12"> </span>La<span class="_ _3"></span>yout<span class="_ _7"> </span>Hierarchy</div><div class="t m0 x14 ha y14 ff7 fs5 fc0 sc0 ls0 ws0">66/66</div></div><div class="pi" data-data='{"ctm":[1.000000,0.000000,0.000000,1.000000,0.000000,0.000000]}'></div></div>
</div>
<div class="loading-indicator">
<img alt="" src="data:image/png;base64,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"/>
</div>
</body>
</html>