{"id":34895,"date":"2025-02-04T13:00:47","date_gmt":"2025-02-04T13:00:47","guid":{"rendered":"https:\/\/toposuranos.com\/material\/?p=34895"},"modified":"2025-09-21T09:50:56","modified_gmt":"2025-09-21T09:50:56","slug":"functiones-in-c","status":"publish","type":"post","link":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/","title":{"rendered":"Functiones in C++"},"content":{"rendered":"<p><head><title>Functiones in C++<\/title><\/p>\n<style>\n        p, ul, ol {\n            text-align: justify;\n        }\n        h1, h2 {\n            text-align: center;\n        }<\/p>\n<p>table {\n        width: 100%;\n        border-collapse: collapse;\n        margin: 20px 0;\n        font-size: 18px;\n        text-align: left;\n    }\n    th, td {\n        padding: 12px;\n        border: 1px solid #ddd;\n    }\n    th {\n        background-color: #007BFF;\n        color: white;\n        text-align: center;\n    }\n    tr:nth-child(even) {\n        background-color: #f2f2f2;\n    }\n    tr:hover {\n        background-color: #ddd;\n    }\n    <\/style>\n<p><\/head><body><\/p>\n<header>\n<h1>Functiones in C++: Pars praecipua ad scribendum codicem clarum atque iterabilem<\/h1>\n<p><em>Animadvertistine quod, cum programma crescit, eius codex fit difficilior ad intellegendum et conservandum? Si umquam sensisti tuum codicem instar labyrinthi implicati videri, id est quia nondum recte uteris functionibus in C++. Hae ut aedificiorum lateres agunt, quae permittunt programmata in partes tractabiles dividi, lectionem, conservationem et optimizationem faciliorem reddentes. In hac lectione disces quomodo eis efficaciter uti possis ad emendandam ordinationem codicis tui, ad scribenda programmata melius structa et ad faciendum ut progressus tuus in C++ fiat magis professionalis et efficax.<\/em><\/p>\n<\/header>\n<section>\n<h2>Proposita Discendi<\/h2>\n<p style=\"text-align:center;\">Expleta hac lectione, didiceris:<\/p>\n<ul>\n<li><strong>Intellegere<\/strong> finem functionum et cur sint necessariae in C++.<\/li>\n<li><strong>Creare<\/strong> functiones recte, ut codex structus sit.<\/li>\n<li><strong>Invocare<\/strong> functiones intra programma et comprehendere quomodo exsequantur.<\/li>\n<li><strong>Distinguere<\/strong> inter functiones quae valores reddunt et eas quae tantum praecepta exsequuntur.<\/li>\n<li><strong>Comparare<\/strong> varias formas functiones definiendi et optimam eligere secundum condicionem.<\/li>\n<\/ul>\n<\/section>\n<p style=\"text-align:center;\">\n<strong><u>INDEX CONTENTORUM<\/u><\/strong><br \/>\n<a href=\"#1\">Declaratio, Invocatio et Definitio Functionum<\/a><br \/>\n<a href=\"#2\">Ratio: Declarare \u2013 Invocare \u2013 Definire<\/a><br \/>\n<a href=\"#3\">Ratio: Declarare et Exsequi antequam Invoces<\/a><br \/>\n<a href=\"#4\">Propagatio Valor\u00eds Rediti<\/a><br \/>\n<a href=\"#5\">Recursio: Functiones quae se ipsas vocant<\/a><br \/>\n<a href=\"#6\">Reditus Multiplex in Functionibus<\/a><br \/>\n<a href=\"#7\">Onus functionum (overloading)<\/a><br \/>\n<a href=\"#8\">Functiones inline in C++<\/a><br \/>\n<a href=\"#9\">Reflexio Ultima de Functionibus in C++<\/a><\/p>\n<p>\n<center><iframe class=\"lazyload\" width=\"560\" height=\"315\" data-src=\"https:\/\/www.youtube.com\/embed\/1SeIwMqpXgM?si=vYxfnmqmkLyXeaY9\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/center><\/p>\n<section><a name=\"1\"><\/a><\/p>\n<h2>Declaratio, Invocatio et Definitio Functionum<\/h2>\n<p>\nIn C++, functiones sunt segmenta codicis iterabilia quae sinunt programmata modo modulari atque ordinato componi. Unaquaeque functio proprium munus includit, quod adiuvat ad claritatem et conservabilitatem codicis augendam. Ut functio in programmate adhiberi possit, tres gradus fundamentales sequi debemus: <strong>declaratio, invocatio et definitio.<\/strong>\n<\/p>\n<p>Hi tres conceptus sunt essentiales, et unusquisque proprium propositum in structura codicis implet. Videamus unumquemque diligentius.<\/p>\n<ol>\n<li><strong>Declaratio functionis<\/strong>\n<p>Antequam functio in codice adhiberi possit, compilatori nuntiandum est eius existentiam. Hoc fit per <strong>declarationem functionis seu prototypon.<\/strong><\/p>\n<p>Declaratio functionis tria elementa fundamentalia compilatori indicat:<\/p>\n<ul>\n<li><strong>Genus datorum quod functio reddet<\/strong> (vel void si nihil reddit).<\/li>\n<li><strong>Nomen functionis.<\/strong><\/li>\n<li><strong>Parametri quos accipit<\/strong> (si adsunt), una cum generibus eorum.<\/li>\n<\/ul>\n<p><\/p>\n<p>Syntaxis generalis declarationis functionis est:<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">tipo_de_retorno nombre_de_funcion (lista_de_parametros);\r\n<\/pre>\n<p>Declaratio functionis plerumque ponitur ante <code>main()<\/code> aut in archivo capitis .h cum cum pluribus archivis laboramus.<\/p>\n<\/li>\n<li><strong>Invocatio functionis<\/strong>\n<p>Postquam functio declarata est, eam invocare possumus, id est, in codice appellare ut exsequi possit.<\/p>\n<p>Cum functio invocatur:<\/p>\n<ul>\n<li>Exsequitur codicem in eius definitione contentum.<\/li>\n<li>Si functio valorem reddit, hic in variabili reponi potest aut directe in expressione adhiberi.<\/li>\n<li>Si functio est generis <code>void<\/code>, simpliciter suas instructiones exsequitur sine ullo reditu.<\/li>\n<\/ul>\n<p><\/p>\n<p>Syntaxis invocationis functionis est simpliciter scribere eius nomen cum parenthesibus et argumentis (si opus sunt):<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\nnombre_de_funcion(argumentos);\r\n<\/pre>\n<\/li>\n<li><strong>Definitio functionis:<\/strong>\n<p>Denique definitio functionis est pars in qua eius actio impletur. Hic specificantur instructiones quae exsequentur cum functio invocabitur.<\/p>\n<p>Syntaxis generalis definitionis functionis est:<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\ntipo_de_retorno nombre_de_funcion (lista_de_parametros) {\r\n    \/\/ Corpus functionis: instructiones exsequendae\r\n    return valor; \/\/ (si functio valorem reddit)\r\n}\r\n<\/pre>\n<p>Unaquaeque definitio functionis regulas sequentes observare debet:<\/p>\n<ul>\n<li>Debet congruere cum declaratione (si antea declarata est).<\/li>\n<li>Si functio valorem reddit (exempli gratia, <code>int<\/code>), oportet includere praeceptionem <code>return<\/code> cum valore reddendo.<\/li>\n<li>Si functio nihil reddit (<code>void<\/code>), simpliciter suas instructiones exsequitur nec <code>return<\/code> indiget.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3>Fluxus exsecutionis<\/h3>\n<p>Cum programma exsequitur, functiones vocantur eo ordine quo apparent in <code>main()<\/code>. Fluxus exsecutionis est hic:<\/p>\n<ol>\n<li>Compilator agnoscit declarationem functionis.<\/li>\n<li>In <code>main()<\/code>, cum inventa est invocatio functionis, imperium programmatis transfertur ad definitionem functionis.<\/li>\n<li>Functio suas instructiones exsequitur.<\/li>\n<li>Si functio valorem redit, hic redditur ad lineam ubi invocata est.<\/li>\n<li>Fluxus programmatis redit ad <code>main()<\/code> vel ad functionem quae invocationem fecit.<\/li>\n<\/ol>\n<h3>Momentum declarationis praevi\u00e6<\/h3>\n<p>Declaratio functionum antequam adhibeantur est maximi momenti quia compilator C++ codicem desuper deorsum pertractat. Si conemur functionem vocare antequam definita vel declarata sit, errorem accipiemus.<\/p>\n<p>Duae formae principales ad hoc tractandum exstant:<\/p>\n<ol>\n<li>Declarare functionem ante <code>main()<\/code> et eam postea definire (ut hucusque vidimus).<\/li>\n<li>Definire functionem ante <code>main()<\/code>, ita necessitatem declarationis praevi\u00e6 vitans.<\/li>\n<\/ol>\n<p>Uterque modus est validus, sed primus utilior est in magnis programmatibus ubi functiones in diversis archivis sunt.<\/p>\n<\/section>\n<section><a name=\"2\"><\/a><\/p>\n<h2>Ratio: Declarare &#8211; Invocare &#8211; Definire<\/h2>\n<p>Unus ex usitatissimis modis ad functiones in C++ ordinandas est <strong>declarare &#8211; invocare &#8211; definire.<\/strong> Hac ratione sequenda, codicem nostrum in tres gradus fundamentales disponimus:<\/p>\n<ol>\n<li><strong>Declaratio:<\/strong> Compilatori nuntiatur de existentia functionis antequam adhibeatur, specificando eius nomen, genus reditus et parametros (si adsunt).<\/li>\n<li><strong>Invocatio:<\/strong> Functio vocatur intra codicem principalem (<code>main()<\/code> in plerisque casibus), exsequens suum contentum.<\/li>\n<li><strong>Definitio:<\/strong> Explanatur implementatio functionis, specificando quas instructiones exsequetur cum invocabitur.<\/li>\n<\/ol>\n<p>Haec structura permittit emendare ordinationem codicis, conservationem et amplificabilitatem faciliorem reddens. Exemplum recognoscamus quo hoc consilium adhibemus:<\/p>\n<h3>Exemplum: Functio <code>consoladice()<\/code><\/h3>\n<p>In sequenti codice, sequimur seriem <strong>declarare &#8211; invocare &#8211; definire:<\/strong><\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\nusing namespace std;\r\n\r\n\/\/ Primo functionem declaramus\r\nvoid consoladice();\r\n\r\nint main() {\r\n    \/\/ Functionem invocamus\r\n    consoladice();\r\n    return 0;\r\n}\r\n\r\n\/\/ Functionem antea declaratam definimus, eius internum munus explicantes\r\nvoid consoladice() {\r\n    cout &lt;&lt; &quot;Hoc est simplex vinculum characterum sive literalium.&quot; &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Nunc tibi ostendo numerum quinque. Ecce hic est: &quot; &lt;&lt; 5 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Videamus quid efficiatur si facimus 10\/5. Eventus est: &quot; &lt;&lt; 10\/5 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Via typica ad numerum Pi approximandum est faciendo 22\/7. Eventus est: &quot; &lt;&lt; 22\/7 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;In C++ non idem est scribere 22\/7 quam 22.0\/7, tractatio diversa est.&quot; &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Hoc simplici mutamento videre possumus quod 22.0\/7 est aequale &quot; &lt;&lt; 22.0\/7 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Nonne hoc tibi melior approximatio videtur?&quot; &lt;&lt; endl;\r\n}\r\n<\/pre>\n<p>Eventus exspectatus huius codicis est<\/p>\n<p><code>Hoc est simplex vinculum characterum sive literalium.<br \/>\nNunc tibi ostendo numerum quinque. Ecce hic est: 5<br \/>\nVideamus quid efficiatur si facimus 10\/5. Eventus est: 2<br \/>\nVia typica ad numerum Pi approximandum est faciendo 22\/7. Eventus est: 3<br \/>\nIn C++ non idem est scribere 22\/7 quam 22.0\/7, tractatio diversa est.<br \/>\nHoc simplici mutamento videre possumus quod 22.0\/7 est aequale 3.14286<br \/>\nNonne hoc tibi melior approximatio videtur?<\/code><\/p>\n<p>Ad melius intellegendum rationem declarare &#8211; invocare &#8211; definire, intendamus in tribus partibus praecipuis codicis:<\/p>\n<ol>\n<li><strong>Linea 5: Declaratio functionis<\/strong>\n<ul>\n<li><code>void consoladice();<\/code> indicat compilatori quod aliquo loco in codice exstabit functio nomine <code>consoladice()<\/code>.<\/li>\n<li>Specificatur eius genus reditus esse <code>void<\/code>, quod significat nullum valorem reddituram esse.<\/li>\n<li>Quamquam adhuc non cognoscitur implementatio <code>consoladice()<\/code>, haec declaratio permittit compilatori eam agnoscere cum postea adhibeatur.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Linea 9: Invocatio functionis<\/strong>\n<ul>\n<li>Intra functionem <code>main()<\/code>, linea <code>consoladice();<\/code> functionem exsequitur.<\/li>\n<li>Hoc momento, compilator iam agnoscit existentiam <code>consoladice()<\/code> gratias eius declarationi praevi\u00e6.<\/li>\n<li>Cum functio invocatur, imperium programmatis transfertur ad eius definitionem, ubi contentum exsequitur.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Lineae 14 ad 22: Definitio functionis<\/strong>\n<ul>\n<li>Hic invenitur implementatio accurata <code>consoladice()<\/code>, instructiones eius specificans.<\/li>\n<li>Hoc in casu functio plura nuntia in consolio imprimit, inter numeros et operationes mathematicas.<\/li>\n<li>Res magni momenti est differentia inter <code>22\/7<\/code> et <code>22.0\/7<\/code>. Cum <code>22\/7<\/code> adhibetur, ambo numeri sunt integri, quod efficit <code>3<\/code> propter divisionem integram. Attamen, cum scribitur <code>22.0\/7<\/code>, cogitur operatio in numero fluitante fieri, obtinens <code>3.14286<\/code>.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<\/section>\n<section><a name=\"3\"><\/a><\/p>\n<h2>Ratio: Declarare et Implementare antequam Invoces<\/h2>\n<p>In C++, praeter rationem <strong>declarare &#8211; invocare &#8211; definire,<\/strong> alia quoque via valida exstat ad functiones nostras ordinandas: <strong>declarare et implementare antequam invoces.<\/strong> Hic modus declarationem et definitionem in unum gradum coniungit, antequam functio in <code>main()<\/code> adhibeatur.<\/p>\n<p>Hoc in consilio, pro declaratione praevi\u00e2 functionis et eius definitione post <code>main()<\/code>, eam directe declaramos atque definimus eodem loco antequam invocetur. Hoc commodum habet declarationem separatam vitandi et codicem reddendi compendiorem ac faciliorem ad legendum in parvis programmatibus.<\/p>\n<p>Structura generalis huius consilii talis est:<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\/\/ Functionem ante main() definimus\r\ntipo_de_retorno nombre_de_funcion(lista_de_parametros) {\r\n    \/\/ Corpus functionis\r\n    return valor; \/\/ si necesse est\r\n}\r\n\r\nint main() {\r\n    \/\/ Invocatio functionis\r\n    nombre_de_funcion(argumentos);\r\n}\r\n<\/pre>\n<p>Quia ante <code>main()<\/code> definita est, compilator eam iam novit cum invocatur, ideo declaratio praevi\u00e2 necessaria non est.<\/p>\n<h3><strong>Exemplum: Functio <code>consoladice()<\/code> sine declaratione praevi\u00e2<\/strong><\/h3>\n<p>Nunc videamus exemplum practicum ubi hoc consilium adhibemus:<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\nusing namespace std;\r\n\r\n\/\/ Functionem antequam invocetur definimus\r\nvoid consoladice() {\r\n    cout &lt;&lt; &quot;Hoc est simplex vinculum characterum sive literalium.&quot; &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Nunc tibi ostendo numerum quinque. Ecce hic est: &quot; &lt;&lt; 5 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Videamus quid efficiatur si facimus 10\/5. Eventus est: &quot; &lt;&lt; 10\/5 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Via typica ad numerum Pi approximandum est faciendo 22\/7. Eventus est: &quot; &lt;&lt; 22\/7 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;In C++ non idem est scribere 22\/7 quam 22.0\/7, tractatio diversa est.&quot; &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Hoc simplici mutamento videre possumus quod 22.0\/7 est aequale &quot; &lt;&lt; 22.0\/7 &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Nonne hoc tibi melior approximatio videtur?&quot; &lt;&lt; endl;\r\n}\r\n\r\nint main() {\r\n    \/\/ Functionem invocamus\r\n    consoladice();\r\n    return 0;\r\n}\r\n<\/pre>\n<p>In hoc codice videre possumus:<\/p>\n<ol>\n<li><strong>Inter lineas 5 et 13, declaratio et definitio coniunguntur<\/strong>\n<p>Functio <code>consoladice()<\/code> directe ante <code>main()<\/code> definita est, sine necessitate declarationis separatae.<\/p>\n<\/li>\n<li><strong>In linea 17, functio invocatur intra <code>main()<\/code><\/strong>\n<p>Quia functio iam antea definita est, compilator eam agnoscit et sine difficultate eius exsecutionem permittit.<\/p>\n<\/li>\n<li><strong>Eventus omnino idem est<\/strong>\n<p>Ad gradum functionis, hoc consilium idem effectum producit ac ratio declarare &#8211; invocare &#8211; definire, sed cum structura compendiore.<\/p>\n<\/li>\n<\/ol>\n<p><strong>\u2705 Commoda:<\/strong><\/p>\n<ul>\n<li>Codex directior et compendiosior in parvis programmatibus.<\/li>\n<li>Declaratio praevi\u00e2 non requiritur, quod numerum linearum codicis minuit.<\/li>\n<li>Faciliorem reddit lectionem in scriptis brevibus ubi omnes functiones in uno archivo continentur.<\/li>\n<\/ul>\n<p><strong>\u274c Incommoda:<\/strong><\/p>\n<ul>\n<li>In magnis programmatibus, ordinatio difficilior fieri potest si multae functiones ante <code>main()<\/code> definiuntur.<\/li>\n<li>Minus utile cum laboratur cum pluribus archivis (.h et .cpp), ubi praeferendum est declarationem in archivo separato servare.<\/li>\n<\/ul>\n<\/section>\n<p><center><iframe class=\"lazyload\" width=\"560\" height=\"315\" data-src=\"https:\/\/www.youtube.com\/embed\/AkIhpuZP80k?si=yT8732AKk2i-QBLe\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/center><\/p>\n<section><a name=\"4\"><\/a><\/p>\n<h2>Propagatio Valor\u00eds Rediti<\/h2>\n<p>Adhuc laboravimus cum functionibus quae simpliciter instructiones exsequuntur sine ullo effectu reddendo. Attamen, in multis casibus necesse est ut functio valorem reddat, ut in aliis computationibus adhibeatur aut in variabilibus reponatur. Hic processus vocatur propagatio valor\u00eds rediti.<\/p>\n<p>In hac sectione discebimus quomodo functiones valores reddentes operantur, quomodo differant ab functionibus generis void, et quomodo hoc instrumentum in C++ adhiberi possit.<\/p>\n<h3>Exemplum Practicum: Functio quae aream rectanguli computat<\/h3>\n<p>Ad illustrandam propagationem valor\u00eds rediti, implebimus functionem quae basim et altitudinem rectanguli accipiat atque aream eius computet.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\nusing namespace std;\r\n\r\n\/\/ Functio quae aream rectanguli computat et eventum reddit\r\ndouble calcularArea(double base, double altura) {\r\n    return base * altura;\r\n}\r\n\r\nint main() {\r\n    double base, altura;\r\n    \r\n    \/\/ Rogamus usorem ut valores inserat\r\n    cout &lt;&lt; &quot;Ingredere basim rectanguli: &quot;;\r\n    cin &gt;&gt; base;\r\n    cout &lt;&lt; &quot;Ingredere altitudinem rectanguli: &quot;;\r\n    cin &gt;&gt; altura;\r\n\r\n    \/\/ Functionem vocamus et eius eventum reponimus\r\n    double area = calcularArea(base, altura);\r\n\r\n    \/\/ Eventum ostendimus\r\n    cout &lt;&lt; &quot;Area rectanguli est: &quot; &lt;&lt; area &lt;&lt; endl;\r\n    \r\n    return 0;\r\n}\r\n<\/pre>\n<ol>\n<li><strong>Functio <code>calcularArea()<\/code> valorem reddit<\/strong>\n<ul>\n<li>Duo valores (<code>base<\/code> et <code>altura<\/code>) ut parametros accipit.<\/li>\n<li>Aream per multiplicationem <code>base * altura<\/code> computat.<\/li>\n<li><code>return<\/code> adhibet ut eventum operationis ad partem programmatis quae eam invocavit mittat.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Usus valoris rediti in <code>main()<\/code><\/strong>\n<ul>\n<li>Valores <code>base<\/code> et <code>altura<\/code> ab usore inseruntur.<\/li>\n<li>Functio <code>calcularArea()<\/code> vocatur, et eius eventus in variabili <code>area<\/code> reponitur.<\/li>\n<li>Denique eventus in consolio ostenditur.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Differentia praecipua cum functione <code>void<\/code><\/strong>\n<p>Si <code>calcularArea()<\/code> generis <code>void<\/code> esset, necesse esset eventum directe intra functionem ostendere, pro eo quod ad <code>main()<\/code> reddatur ad usum posteriorem.<\/p>\n<\/li>\n<\/ol>\n<h3>Exemplum: Functio quae determinat utrum numerus sit par vel impar<\/h3>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\nusing namespace std;\r\n\r\nbool esPar(int numero) {\r\n    return numero % 2 == 0;\r\n}\r\n\r\nint main() {\r\n    int numero;\r\n    cout &lt;&lt; &quot;Ingredere numerum: &quot;; cin &gt;&gt; numero;\r\n\r\n    if (esPar(numero)) {\r\n        cout &lt;&lt; &quot;Numerus est par.&quot; &lt;&lt; endl;\r\n    } else {\r\n        cout &lt;&lt; &quot;Numerus est impar.&quot; &lt;&lt; endl;\r\n    }\r\n\r\n    return 0;\r\n}\r\n<\/pre>\n<p>Hic functio <code>esPar()<\/code> reddit <code>true<\/code> si numerus est par et <code>false<\/code> si impar est, permittens <code>main()<\/code> uti eventu ad decernendum quem nuntium ostendere debeat.<\/p>\n<\/section>\n<p><center><iframe class=\"lazyload\" width=\"560\" height=\"315\" data-src=\"https:\/\/www.youtube.com\/embed\/cRi0T1AeVaA?si=zIcuFhfy5Xs9U_kn\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/center><\/p>\n<section><a name=\"5\"><\/a><\/p>\n<h2>Recursio: Functiones quae se ipsas vocant<\/h2>\n<p><strong>Recursio<\/strong> est ars qua functio se ipsam invocat ad problemata solvenda ea dividendo in versiones minores sui ipsius. Haec praecipue utilis est in algorithmis ut calculus factorialis, series Fibonacci et peragrationes in structuris datorum sicut arbores.<\/p>\n<h3>Exemplum: Factorialis Numeri<\/h3>\n<p>Factorialis numeri <span class=\"katex-eq\" data-katex-display=\"false\">n<\/span> est <span class=\"katex-eq\" data-katex-display=\"false\">n!=n\\cdot(n-1)\\cdot(n-2) \\cdots 3 \\cdot2 \\cdot 1<\/span>. Haec formulatio structuram recursive habet quam mathematice repraesentare possumus hoc modo:<\/p>\n<p style=\"text-align:center;\"><span class=\"katex-eq\" data-katex-display=\"false\">\n\\begin{array}{rl}\n\n0! &amp;=1\\\\\n\nn! &amp;= n\\cdot(n-1)!\\\\\n\n\\end{array}\n\n<\/span>\n<p>His habitis, hanc functionem in C++ ita programmare possumus:<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\nusing namespace std;\r\n \r\nint factorial(int n) {\r\n    if (n == 0 || n == 1) {\r\n        return 1;\r\n    }\r\n    return n*factorial(n - 1);\r\n}\r\n \r\nint main() {\r\n    int numero;\r\n    cout &lt;&lt; &quot;Ingredere numerum: &quot;; cin &gt;&gt; numero;\r\n    cout &lt;&lt; &quot;Factorialis &quot; &lt;&lt; numero &lt;&lt; &quot; est &quot; &lt;&lt; factorial(numero) &lt;&lt; endl;\r\n    return 0;\r\n}<\/pre>\n<p>In hoc codice:<\/p>\n<ul>\n<li>Functio <code>factorial(n)<\/code> se ipsam vocat cum <code>n-1<\/code> donec ad casum basalem perveniat (<code>n == 0<\/code> vel <code>n == 1<\/code>).<\/li>\n<li>Functio recursivo modo solvitur, valores multiplicans donec eventus inveniatur.<\/li>\n<\/ul>\n<h3>Exemplum: Numeri Fibonacci<\/h3>\n<p>Numeri Fibonacci sunt illi qui comprehenduntur in serie <span class=\"katex-eq\" data-katex-display=\"false\">1, 1, 2, 3, 5, 8, 13, \\cdots<\/span>. Haec series eo distinguitur quod unusquisque numerus aequalis est summae duorum praecedentium.<\/p>\n<p>Mathematice, si <span class=\"katex-eq\" data-katex-display=\"false\">fibo(n)<\/span> est functio cuius eventus numeri Fibonacci sunt, tunc talem structuram mathematicam habet<\/p>\n<p style=\"text-align:center;\"><span class=\"katex-eq\" data-katex-display=\"false\">\n\\begin{array}{rl}\n\nfibo(0) &amp;= 1\\\\\n\nfibo(1) &amp;= 1 \\\\\n\nfibo(n) &amp;= fibo(n-1) + fibo(n-2)\n\n\\end{array}\n\n<\/span>\n<p>Exemplum codicis in C++ quod numeros Fibonacci ostendit tale est:<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include&lt;iostream&gt;\r\n \r\nusing namespace std;\r\n \r\nint fibo(int numero){\r\n    if (numero==0||numero==1){\r\n        return 1;\r\n        }\r\n    return fibo(numero-1)+fibo(numero-2);\r\n    }\r\n \r\nint main(){\r\n    int x=0, i=0;\r\n    cout &lt;&lt; &quot;Ingredere numerum: &quot;; cin &gt;&gt; x;\r\n     \r\n    while (i &lt; x){\r\n        cout &lt;&lt;&quot;Numerus Fibonacci in positione &quot; &lt;&lt; i+1 &lt;&lt; &quot; est: &quot; &lt;&lt; fibo(i)&lt;&lt;endl;\r\n        i=i+1;\r\n    }   \r\n}\r\n<\/pre>\n<\/section>\n<p><center><iframe class=\"lazyload\" width=\"560\" height=\"315\" data-src=\"https:\/\/www.youtube.com\/embed\/EnMxDCHV1qg?si=4Y6oVAdNe9UeVDL5\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/center><\/p>\n<section><a name=\"6\"><\/a><\/p>\n<h2>Reditus Multiplex in Functionibus<\/h2>\n<p>In C++, functio plures valores reddere potest utens structuris sicut <code>std::pair<\/code>, <code>std::tuple<\/code> vel referentiis ad variabiles.<\/p>\n<h3>Exemplum: Functio quae duos valores cum <code>std::pair<\/code> reddit<\/h3>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\n#include &lt;utility&gt; \/\/ Ad utendum std::pair\r\nusing namespace std;\r\n \r\npair&lt;int, int&gt; dividir(int a, int b) {\r\n    return make_pair(a \/ b, a % b);\r\n}\r\n \r\nint main() {\r\n    int numerador=0, denominador=1;\r\n     \r\n    cout &lt;&lt; &quot;Ingredere numeratorem: &quot;; cin &gt;&gt; numerador;\r\n    cout &lt;&lt; &quot;Ingredere denominatorem: &quot;; cin &gt;&gt; denominador;\r\n     \r\n    pair&lt;int, int&gt; resultado = dividir(numerador, denominador);\r\n \r\n    cout &lt;&lt; &quot;Quotientia: &quot; &lt;&lt; resultado.first &lt;&lt; endl;\r\n    cout &lt;&lt; &quot;Reliquum: &quot; &lt;&lt; resultado.second &lt;&lt; endl;\r\n \r\n    return 0;\r\n}\r\n<\/pre>\n<p>Hic functio <code>dividir()<\/code> duos valores reddit: quotientiam et residuum divisionis integralis.<\/p>\n<h3>Exemplum: Functio quae duos valores cum <code>std::tuple<\/code> reddit<\/h3>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\n#include &lt;tuple&gt;\r\nusing namespace std;\r\n\r\ntuple&lt;int, int, int&gt; operaciones(int a, int b) {\r\n    return make_tuple(a + b, a - b, a * b);\r\n}\r\n\r\nint main() {\r\n    int suma=0, resta=0, producto=0;\r\n    int a=0, b=0;\r\n    \r\n    cout &lt;&lt; &quot;Ingredere numerum: &quot;; cin &gt;&gt; a;\r\n    \r\n    cout &lt;&lt; &quot;Ingredere alium numerum: &quot;; cin &gt;&gt; b;\r\n    \r\n    std::tie(suma, resta, producto) = operaciones(a, b);\r\n\r\n    cout &lt;&lt; &quot;Additio: &quot; &lt;&lt; suma &lt;&lt; &quot;, Subtractio: &quot; &lt;&lt; resta &lt;&lt; &quot;, Productum: &quot; &lt;&lt; producto &lt;&lt; endl;\r\n    return 0;\r\n}\r\n<\/pre>\n<\/section>\n<p><center><iframe class=\"lazyload\" width=\"560\" height=\"315\" data-src=\"https:\/\/www.youtube.com\/embed\/UdkBf26gTew?si=RTadJpxFBQ2Uctzs\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/center><\/p>\n<section><a name=\"7\"><\/a><\/p>\n<h2>Onus functionum (overloading)<\/h2>\n<p>Onus functionum permittit definire plures functiones eodem nomine sed diversis generibus vel quantitatibus parameterum. Hoc legibilitatem et iterationem codicis meliorat.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\n#include &lt;string&gt; \/\/ Necessarium ad utendum std::string\r\n#include &lt;cmath&gt;\r\n\r\nusing namespace std;\r\n\r\n\/\/ Area quadrati vel circuli (figurae cum uno dato)\r\ndouble area(double lado) {\r\n    return lado * lado;\r\n}\r\n\r\n\/\/ Area rectanguli (vel figurarum cum duobus datis)\r\ndouble area(double base, double altura) {\r\n    return base * altura;\r\n}\r\n\/\/ Area trianguli (vel figurarum cum tribus datis)\r\ndouble area(double a, double b, double c){\r\n\treturn 0.25*sqrt((a+b+c)*(a+b-c)*(a-b+c)*(-a+b+c));\r\n}\r\n\r\nint main() {\r\n    string figura;\r\n    double resultado = 0;\r\n    double l1=0, l2=0, l3=0;\r\n\r\n    \/\/ Rogare figuram\r\n    cout &lt;&lt; &quot;Quae figura est? (quadratum, circulus, rectangulum vel triangulum): &quot;;\r\n    cin &gt;&gt; figura;\r\n\r\n    \/\/ Figuram per if-else aestimare\r\n    if (figura == &quot;cuadrado&quot;) {\r\n        cout &lt;&lt; &quot;Quantum latus metitur? &quot;; cin &gt;&gt; l1;\r\n        resultado = area(l1);\r\n        cout &lt;&lt; &quot;Area quadrati est: &quot; &lt;&lt; resultado &lt;&lt; endl;\r\n    } \r\n    else if (figura == &quot;rectangulo&quot;){\r\n        cout &lt;&lt; &quot;Quantum basis metitur? &quot;; cin &gt;&gt; l1;\r\n        cout &lt;&lt; &quot;Quantum altitudo metitur? &quot;;cin &gt;&gt; l2;\r\n        resultado = area(l1, l2);\r\n        cout &lt;&lt; &quot;Area rectanguli est: &quot; &lt;&lt; resultado &lt;&lt; endl;\r\n    } \r\n    else if (figura == &quot;circulo&quot;) {\r\n\t\tl1 = 3.141592653;\r\n        cout &lt;&lt; &quot;Quantum radius metitur? &quot;; cin &gt;&gt; l2;\r\n        resultado = area(l1, l2);\r\n        cout &lt;&lt; &quot;Area circuli est: &quot; &lt;&lt; resultado &lt;&lt; endl;\r\n    } \r\n    else if (figura == &quot;triangulo&quot;){\r\n    \tcout &lt;&lt; &quot;Quantum latera eius metiuntur?&quot; &lt;&lt; endl;\r\n    \tcout &lt;&lt; &quot;latus 1: &quot;; cin &gt;&gt; l1;\r\n\t\tcout &lt;&lt; &quot;latus 2: &quot;; cin &gt;&gt; l2;\r\n\t\tcout &lt;&lt; &quot;latus 3: &quot;; cin &gt;&gt; l3;\r\n\t\t\t\r\n\t\tif ((l1+l2+l3)*(l1+l2-l3)*(l1-l2+l3)*(-l1+l2+l3)&lt;0){\r\n\t\t\tcout &lt;&lt; &quot;triangulum impossibile est&quot;;\r\n\t\t}\t\r\n\t\telse {\r\n\t\t\tresultado = area(l1,l2,l3);\r\n\t\t\tcout &lt;&lt; &quot;Area trianguli est: &quot; &lt;&lt; resultado &lt;&lt; endl;\r\n\t\t} \t\t\t\r\n\t}\r\n    else {\r\n        cout &lt;&lt; &quot;Figura non valida.&quot; &lt;&lt; endl;\r\n    }\r\n    return 0;\r\n}<\/pre>\n<\/section>\n<p><center><iframe class=\"lazyload\" width=\"560\" height=\"315\" data-src=\"https:\/\/www.youtube.com\/embed\/0vzQFAXjqbg?si=ckRolBE3n0I5QPPp\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/center><\/p>\n<section><a name=\"8\"><\/a><\/p>\n<h2>Functiones inline in C++<\/h2>\n<p>Functiones <code>inline<\/code> in C++ praebent rationem ad emendandam celeritatem programmatis minuendo onus vocationum functionis. Pro vocatione conventionali exsequenda, compilator conatur codicem functionis directe expandere in unoquoque loco ubi invocatur.<\/p>\n<h3>Syntaxis functionis inline<\/h3>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\ninline tipo_de_retorno nombre_de_funcion(lista_de_parametros) {\r\n    \/\/ Corpus functionis\r\n    return valor; \/\/ Si necesse est\r\n}<\/pre>\n<p>Utendo <code>inline<\/code>, tollimus necessitatem ad aliam memoriam regionem saliendi ut functionem exsequamur, quod potest minuere tempus exsecutionis.<\/p>\n<h3>Differentiae inter functionem inline et functionem communem<\/h3>\n<table>\n<tr>\n<th style=\"width: 20%;\"><strong>Proprietas<\/strong><\/th>\n<th><strong>Functio Communis<\/strong><\/th>\n<th><strong>Functio inline<\/strong><\/th>\n<\/tr>\n<tr>\n<td><strong>Vocatio functionis<\/strong><\/td>\n<td>Vocatio fit cum saltu exsecutionis.<\/td>\n<td>Codex directe in loco usus copulatur.<\/td>\n<\/tr>\n<tr>\n<td><strong>Tempus exsecutionis<\/strong><\/td>\n<td>Lentior esse potest propter onus vocationis.<\/td>\n<td>Celerior esse potest in functionibus parvis.<\/td>\n<\/tr>\n<tr>\n<td><strong>Usus memoriae<\/strong><\/td>\n<td>Una sola copia functionis in memoria reconditur.<\/td>\n<td>Magnitudinem codicis binarii augere potest si functio saepe adhibetur.<\/td>\n<\/tr>\n<\/table>\n<h3>Exemplum functionis <code>inline<\/code><\/h3>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n#include &lt;iostream&gt;\r\nusing namespace std;\r\n\r\ninline int cuadrado(int x) {\r\n    return x * x;\r\n}\r\n\r\nint main() {\r\n    cout &lt;&lt; &quot;Quadratum 5 est: &quot; &lt;&lt; cuadrado(5) &lt;&lt; endl;\r\n    return 0;\r\n}\r\n<\/pre>\n<p><strong>\ud83d\udd0d Processus compilatoris:<\/strong><\/p>\n<ol>\n<li>Compilator vocem <code>cuadrado(5)<\/code> directe substituit cum <code>5 * 5<\/code>.<\/li>\n<li>Nullus est saltus exsecutionis.<\/li>\n<li>Computatio fit in eadem linea ubi functio invocata est.<\/li>\n<\/ol>\n<h3>Commoda et incommoda <code>inline<\/code><\/h3>\n<p><strong>\u2705 Commoda<\/strong><\/p>\n<ul>\n<li><strong>Onus vocationum functionis tollit:<\/strong> Minuit tempus exsecutionis in functionibus brevibus et saepe vocatis.<\/li>\n<li><strong>Optimizationem a compilatore facilitat:<\/strong> Potest augere celeritatem vitando usum registrarum CPU et pilae.<\/li>\n<li><strong>Praestat ut codex functionis tempore compilationis praesto sit.<\/strong><\/li>\n<\/ul>\n<p><strong>\u274c Incommoda<\/strong><\/p>\n<ul>\n<li><strong>Magnitudinem binarii auget:<\/strong> Si functio <code>inline<\/code> multoties in magno programmate adhibetur, codex in unoquoque loco invocationis duplicabitur. Hoc fit cum adhibetur in functionibus longis aut saepius repetitis in codice.<\/li>\n<li><strong>Non semper expansionem in linea praestat:<\/strong> Compilator petitionem <code>inline<\/code> neglegere potest si censet id non esse optimum.<\/li>\n<\/ul>\n<\/section>\n<footer><a name=\"9\"><\/a><\/p>\n<h2>Reflexio Ultima de Functionibus in C++<\/h2>\n<p>Functiones in C++ sunt instrumentum essentiale ad scribendum codicem modulariter, iterabiliter et facile conservandum. Per hanc lectionem, exploravimus a notionibus fundamentalibus declarationis, invocationis et definitionis usque ad artes provectiores sicut propagationem valorum reditus, recursionem, onus functionum et usum functionum <code>inline<\/code>. Etiam varias rationes ordinationis codicis comparavimus atque quomodo optimam eligere secundum contextum.<\/p>\n<p>Recte intellegere et applicare functiones non solum efficiet ut codex tuus clarior et efficacior sit, sed etiam permittet te problemata difficiliora tractare solutionibus bene structis. Nunc fundamenta habes ad programmata in C++ evolvenda magis professionaliter et amplius crescenda. Optima via ad haec studia confirmanda est praxi, ideo te hortor ut cum variis generibus functionum experiaris easque in propriis inceptis adhibeas. Perge explorare et artes tuas in C++ ad gradum proximum ducere!<\/p>\n<\/footer>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Functiones in C++ Functiones in C++: Pars praecipua ad scribendum codicem clarum atque iterabilem Animadvertistine quod, cum programma crescit, eius codex fit difficilior ad intellegendum et conservandum? Si umquam sensisti tuum codicem instar labyrinthi implicati videri, id est quia nondum recte uteris functionibus in C++. Hae ut aedificiorum lateres agunt, quae permittunt programmata in partes [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":31365,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":1,"footnotes":""},"categories":[1202,1214],"tags":[],"class_list":["post-34895","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-computatio-et-informatica","category-programmatio-in-c"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Functiones in C++ - toposuranos.com\/material<\/title>\n<meta name=\"description\" content=\"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Functiones in C++\" \/>\n<meta property=\"og:description\" content=\"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/\" \/>\n<meta property=\"og:site_name\" content=\"toposuranos.com\/material\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/groups\/toposuranos\" \/>\n<meta property=\"article:published_time\" content=\"2025-02-04T13:00:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-09-21T09:50:56+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c-1024x585.jpg\" \/>\n<meta name=\"author\" content=\"giorgio.reveco\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Functiones in C++\" \/>\n<meta name=\"twitter:description\" content=\"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@topuranos\" \/>\n<meta name=\"twitter:site\" content=\"@topuranos\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"giorgio.reveco\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/\"},\"author\":{\"name\":\"giorgio.reveco\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#\\\/schema\\\/person\\\/e15164361c3f9a2a02cf6c234cf7fdc1\"},\"headline\":\"Functiones in C++\",\"datePublished\":\"2025-02-04T13:00:47+00:00\",\"dateModified\":\"2025-09-21T09:50:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/\"},\"wordCount\":3087,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/funciones-en-c.jpg\",\"articleSection\":[\"Computatio et Informatica\",\"Programmatio in C++\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/\",\"url\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/\",\"name\":\"Functiones in C++ - toposuranos.com\\\/material\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/funciones-en-c.jpg\",\"datePublished\":\"2025-02-04T13:00:47+00:00\",\"dateModified\":\"2025-09-21T09:50:56+00:00\",\"description\":\"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#primaryimage\",\"url\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/funciones-en-c.jpg\",\"contentUrl\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/funciones-en-c.jpg\",\"width\":1792,\"height\":1024,\"caption\":\"toposuranos.com\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/la\\\/functiones-in-c\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"http:\\\/\\\/toposuranos.com\\\/material\\\/es\\\/cursos-de-matematica-y-fisica\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Functiones in C++\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#website\",\"url\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/\",\"name\":\"toposuranos.com\\\/material\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#organization\",\"name\":\"toposuranos.com\\\/material\",\"url\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"http:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/logo.png\",\"contentUrl\":\"http:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/logo.png\",\"width\":2400,\"height\":2059,\"caption\":\"toposuranos.com\\\/material\"},\"image\":{\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/groups\\\/toposuranos\",\"https:\\\/\\\/x.com\\\/topuranos\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UC16yDm12cPcrwsE0fAM7X1g\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/69429190\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/#\\\/schema\\\/person\\\/e15164361c3f9a2a02cf6c234cf7fdc1\",\"name\":\"giorgio.reveco\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"http:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/1694478625378-96x96.jpeg\",\"url\":\"http:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/1694478625378-96x96.jpeg\",\"contentUrl\":\"http:\\\/\\\/toposuranos.com\\\/material\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/1694478625378-96x96.jpeg\",\"caption\":\"giorgio.reveco\"},\"description\":\"Soy Licenciado en F\u00edsica, Magister en Ingenier\u00eda Industrial y Docente Universitario. Me dedico a desmitificar la f\u00edsica y las matem\u00e1ticas. Mi objetivo es hacer que estos campos sean f\u00e1cilmente comprensibles para todos, proporcionando las herramientas para explorar no solo el mundo que nos rodea, sino tambi\u00e9n las profundidades de nuestra propia existencia y el orden natural que nos conecta con el cosmos.\",\"sameAs\":[\"http:\\\/\\\/toposuranos.com\\\/material\"],\"url\":\"https:\\\/\\\/toposuranos.com\\\/material\\\/author\\\/giorgio-reveco\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Functiones in C++ - toposuranos.com\/material","description":"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/","og_locale":"es_ES","og_type":"article","og_title":"Functiones in C++","og_description":"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.","og_url":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/","og_site_name":"toposuranos.com\/material","article_publisher":"https:\/\/www.facebook.com\/groups\/toposuranos","article_published_time":"2025-02-04T13:00:47+00:00","article_modified_time":"2025-09-21T09:50:56+00:00","og_image":[{"url":"http:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c-1024x585.jpg","type":"","width":"","height":""}],"author":"giorgio.reveco","twitter_card":"summary_large_image","twitter_title":"Functiones in C++","twitter_description":"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.","twitter_image":"https:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c.jpg","twitter_creator":"@topuranos","twitter_site":"@topuranos","twitter_misc":{"Escrito por":"giorgio.reveco","Tiempo de lectura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#article","isPartOf":{"@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/"},"author":{"name":"giorgio.reveco","@id":"https:\/\/toposuranos.com\/material\/#\/schema\/person\/e15164361c3f9a2a02cf6c234cf7fdc1"},"headline":"Functiones in C++","datePublished":"2025-02-04T13:00:47+00:00","dateModified":"2025-09-21T09:50:56+00:00","mainEntityOfPage":{"@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/"},"wordCount":3087,"commentCount":0,"publisher":{"@id":"https:\/\/toposuranos.com\/material\/#organization"},"image":{"@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#primaryimage"},"thumbnailUrl":"https:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c.jpg","articleSection":["Computatio et Informatica","Programmatio in C++"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/","url":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/","name":"Functiones in C++ - toposuranos.com\/material","isPartOf":{"@id":"https:\/\/toposuranos.com\/material\/#website"},"primaryImageOfPage":{"@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#primaryimage"},"image":{"@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#primaryimage"},"thumbnailUrl":"https:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c.jpg","datePublished":"2025-02-04T13:00:47+00:00","dateModified":"2025-09-21T09:50:56+00:00","description":"Disce uti functionibus in C++ efficaciter, eas declarare, invocare atque definire per exempla practica, explorans notiones sicut reditum valorum, onus functionum, recursionem et functiones inline.","breadcrumb":{"@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#primaryimage","url":"https:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c.jpg","contentUrl":"https:\/\/toposuranos.com\/material\/wp-content\/uploads\/2025\/02\/funciones-en-c.jpg","width":1792,"height":1024,"caption":"toposuranos.com"},{"@type":"BreadcrumbList","@id":"https:\/\/toposuranos.com\/material\/la\/functiones-in-c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"http:\/\/toposuranos.com\/material\/es\/cursos-de-matematica-y-fisica\/"},{"@type":"ListItem","position":2,"name":"Functiones in C++"}]},{"@type":"WebSite","@id":"https:\/\/toposuranos.com\/material\/#website","url":"https:\/\/toposuranos.com\/material\/","name":"toposuranos.com\/material","description":"","publisher":{"@id":"https:\/\/toposuranos.com\/material\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/toposuranos.com\/material\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/toposuranos.com\/material\/#organization","name":"toposuranos.com\/material","url":"https:\/\/toposuranos.com\/material\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/toposuranos.com\/material\/#\/schema\/logo\/image\/","url":"http:\/\/toposuranos.com\/material\/wp-content\/uploads\/2023\/10\/logo.png","contentUrl":"http:\/\/toposuranos.com\/material\/wp-content\/uploads\/2023\/10\/logo.png","width":2400,"height":2059,"caption":"toposuranos.com\/material"},"image":{"@id":"https:\/\/toposuranos.com\/material\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/groups\/toposuranos","https:\/\/x.com\/topuranos","https:\/\/www.youtube.com\/channel\/UC16yDm12cPcrwsE0fAM7X1g","https:\/\/www.linkedin.com\/company\/69429190"]},{"@type":"Person","@id":"https:\/\/toposuranos.com\/material\/#\/schema\/person\/e15164361c3f9a2a02cf6c234cf7fdc1","name":"giorgio.reveco","image":{"@type":"ImageObject","inLanguage":"es","@id":"http:\/\/toposuranos.com\/material\/wp-content\/uploads\/2023\/10\/1694478625378-96x96.jpeg","url":"http:\/\/toposuranos.com\/material\/wp-content\/uploads\/2023\/10\/1694478625378-96x96.jpeg","contentUrl":"http:\/\/toposuranos.com\/material\/wp-content\/uploads\/2023\/10\/1694478625378-96x96.jpeg","caption":"giorgio.reveco"},"description":"Soy Licenciado en F\u00edsica, Magister en Ingenier\u00eda Industrial y Docente Universitario. Me dedico a desmitificar la f\u00edsica y las matem\u00e1ticas. Mi objetivo es hacer que estos campos sean f\u00e1cilmente comprensibles para todos, proporcionando las herramientas para explorar no solo el mundo que nos rodea, sino tambi\u00e9n las profundidades de nuestra propia existencia y el orden natural que nos conecta con el cosmos.","sameAs":["http:\/\/toposuranos.com\/material"],"url":"https:\/\/toposuranos.com\/material\/author\/giorgio-reveco\/"}]}},"_links":{"self":[{"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/posts\/34895","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/comments?post=34895"}],"version-history":[{"count":0,"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/posts\/34895\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/media\/31365"}],"wp:attachment":[{"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/media?parent=34895"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/categories?post=34895"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/toposuranos.com\/material\/wp-json\/wp\/v2\/tags?post=34895"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}