<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ro">
		<id>https://wiki.lug.ro/index.php?action=history&amp;feed=atom&amp;title=STL_list_HowTo</id>
		<title>STL list HowTo - Revizia istoricului</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.lug.ro/index.php?action=history&amp;feed=atom&amp;title=STL_list_HowTo"/>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;action=history"/>
		<updated>2026-08-01T10:10:50Z</updated>
		<subtitle>Istoricul versiunilor pentru această pagină din wiki</subtitle>
		<generator>MediaWiki 1.27.7</generator>

	<entry>
		<id>https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=5230&amp;oldid=prev</id>
		<title>Bmbogdan: Reveniri la ultima modificare de către 93.174.93.222 (discuţie); revenire la ultima versiune de către 81.180.68.6</title>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=5230&amp;oldid=prev"/>
				<updated>2009-10-12T10:03:05Z</updated>
		
		<summary type="html">&lt;p&gt;Reveniri la ultima modificare de către &lt;a href=&quot;/index.php/Special:Contribu%C8%9Bii/93.174.93.222&quot; title=&quot;Special:Contribuții/93.174.93.222&quot;&gt;93.174.93.222&lt;/a&gt; (&lt;a href=&quot;/index.php?title=Discu%C8%9Bie_Utilizator:93.174.93.222&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Discuție Utilizator:93.174.93.222 (pagină inexistentă)&quot;&gt;discuţie&lt;/a&gt;); revenire la ultima versiune de către &lt;a href=&quot;/index.php?title=Utilizator:81.180.68.6&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Utilizator:81.180.68.6 (pagină inexistentă)&quot;&gt;81.180.68.6&lt;/a&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ro'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versiunea anterioară&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Versiunea de la data 12 octombrie 2009 10:03&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Linia 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;STL list HowTo&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;STL list HowTo&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;hqpJlJ&amp;#160; &amp;lt;a href&lt;/del&gt;=&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;quot;http://npfnvwdqipty&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;com/&amp;quot;&amp;gt;npfnvwdqipty&amp;lt;/&lt;/del&gt;a&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;gt;&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;[url=http://aoahltywajab&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;com/]aoahltywajab[/url], [link=http:/&lt;/del&gt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;wrzldyvuqunf&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;com/]wrzldyvuqunf[/link], http://nejcwlduurhb&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;com/&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Ce este STL=&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;STL este una dintre cele mai interesante unelte pe care le are la dispoziţie&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;un programator C++. Constă într-o serie de containere precum&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;liste, vectori, seturi (sets), maps şi o serie de algoritmi care operează pe&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;aceste containere&lt;/ins&gt;. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Scopul bibliotecii este de &lt;/ins&gt;a&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;standardiza aceste containere şi aceşti algoritmi&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;astfel încât programatorul nu trebuie să&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;le reinventeze de fiecare dată când are nevoie de aşa ceva.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Biblioteca STL este parte integrală a limbajului C++ şi a fost standardizată în prima versiune&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a standardului ISO C++ (1998)&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Unul din cele mai folosite tipuri de containere în C&lt;/ins&gt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;C++ este lista înlănţuită&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Micul tutorial care urmează descrie modul de folosire a acestui tip de container&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Iniţializare=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Iniţializare=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Bmbogdan</name></author>	</entry>

	<entry>
		<id>https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=5229&amp;oldid=prev</id>
		<title>93.174.93.222: /* Ce este STL */</title>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=5229&amp;oldid=prev"/>
				<updated>2009-10-12T08:52:41Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Ce este STL&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ro'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versiunea anterioară&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Versiunea de la data 12 octombrie 2009 08:52&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Linia 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;STL list HowTo&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;STL list HowTo&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Ce este STL&lt;/del&gt;=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;hqpJlJ&amp;#160; &amp;lt;a href&lt;/ins&gt;=&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;quot;http://npfnvwdqipty.com/&amp;quot;&amp;gt;npfnvwdqipty&amp;lt;/a&amp;gt;, [url&lt;/ins&gt;=&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;http://aoahltywajab&lt;/ins&gt;.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;com/]aoahltywajab[/url]&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[link=http://wrzldyvuqunf&lt;/ins&gt;.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;com/]wrzldyvuqunf[/link]&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;http://nejcwlduurhb&lt;/ins&gt;.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;com&lt;/ins&gt;/&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;STL este una dintre cele mai interesante unelte pe care le are la dispoziţie&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;un programator C++&lt;/del&gt;. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Constă într-o serie de containere precum&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;liste&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;vectori, seturi (sets), maps şi o serie de algoritmi care operează pe&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;aceste containere&lt;/del&gt;. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Scopul bibliotecii este de a&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;standardiza aceste containere şi aceşti algoritmi&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;astfel încât programatorul nu trebuie să&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;le reinventeze de fiecare dată când are nevoie de aşa ceva.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Biblioteca STL este parte integrală a limbajului C++ şi a fost standardizată în prima versiune&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;a standardului ISO C++ (1998)&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Unul din cele mai folosite tipuri de containere în C&lt;/del&gt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;C++ este lista înlănţuită.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Micul tutorial care urmează descrie modul de folosire a acestui tip de container.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Iniţializare=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=Iniţializare=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>93.174.93.222</name></author>	</entry>

	<entry>
		<id>https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=4236&amp;oldid=prev</id>
		<title>81.180.68.6: /* Fiţuică */</title>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=4236&amp;oldid=prev"/>
				<updated>2008-03-26T16:41:46Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Fiţuică&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ro'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versiunea anterioară&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Versiunea de la data 26 martie 2008 16:41&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l391&quot; &gt;Linia 391:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 391:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // si end care respecta conditia specificata in functor&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // si end care respecta conditia specificata in functor&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; stable_partition(start, end, functor); // rearanjeaza elementele listei intre pozitiile&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; stable_partition(start, end, functor); // rearanjeaza elementele listei intre pozitiile&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // start si end conform conditiei specificate in &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;functor123&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // start si end conform conditiei specificate in &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;functor&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=În concluzie...=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=În concluzie...=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>81.180.68.6</name></author>	</entry>

	<entry>
		<id>https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=4235&amp;oldid=prev</id>
		<title>81.180.68.6: /* Fiţuică */</title>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=4235&amp;oldid=prev"/>
				<updated>2008-03-26T16:41:24Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Fiţuică&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ro'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versiunea anterioară&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Versiunea de la data 26 martie 2008 16:41&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l391&quot; &gt;Linia 391:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 391:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // si end care respecta conditia specificata in functor&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // si end care respecta conditia specificata in functor&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; stable_partition(start, end, functor); // rearanjeaza elementele listei intre pozitiile&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; stable_partition(start, end, functor); // rearanjeaza elementele listei intre pozitiile&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // start si end conform conditiei specificate in &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;functor&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // start si end conform conditiei specificate in &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;functor123&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=În concluzie...=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=În concluzie...=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>81.180.68.6</name></author>	</entry>

	<entry>
		<id>https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=4234&amp;oldid=prev</id>
		<title>81.180.68.6: /* Fiţuică */</title>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=4234&amp;oldid=prev"/>
				<updated>2008-03-26T16:41:14Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Fiţuică&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ro'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versiunea anterioară&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Versiunea de la data 26 martie 2008 16:41&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l392&quot; &gt;Linia 392:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 392:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; stable_partition(start, end, functor); // rearanjeaza elementele listei intre pozitiile&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; stable_partition(start, end, functor); // rearanjeaza elementele listei intre pozitiile&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // start si end conform conditiei specificate in functor&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // start si end conform conditiei specificate in functor&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=În concluzie...=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=În concluzie...=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>81.180.68.6</name></author>	</entry>

	<entry>
		<id>https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=2308&amp;oldid=prev</id>
		<title>Lc la 28 decembrie 2005 20:09</title>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=2308&amp;oldid=prev"/>
				<updated>2005-12-28T20:09:21Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ro'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versiunea anterioară&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Versiunea de la data 28 decembrie 2005 20:09&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l359&quot; &gt;Linia 359:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 359:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; linux&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; linux&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; rocks&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; rocks&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=Fiţuică=&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; list&amp;lt;string&amp;gt; mylist; // creaza o lista de elemente string&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; mylist.push_front(&amp;quot;first string&amp;quot;); // adauga &amp;quot;first string&amp;quot; la inceputul listei&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; mylist.push_back(&amp;quot;last string&amp;quot;); // adauga &amp;quot;last string&amp;quot; la sfarsitul listei&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; if (mylist.empty()) // test daca lista este goala&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; int list_size = mylist.size(); // numarul de elemente din lista&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; string &amp;amp;front = mylist.front(); // referinta la primul string din lista&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; string &amp;amp;back = maylist.back(); // referinta la ultimul string din lista&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; list&amp;lt;string&amp;gt;::iterator start = mylist.begin(); // iterator la inceputul listei&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; list&amp;lt;string&amp;gt;::iterator end = mylist.end(); // iterator la sfarsitul listei&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; string some_string = *some_iterator; // dereferentierea unui iterator este un string&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; mylist.insert(position, &amp;quot;some string&amp;quot;); // insereaza &amp;quot;some string&amp;quot; in lista dupa&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;  // pozitia specificata de iteratorul position&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; mylist.erase(position); // sterge stringul de la pozitia position din lista&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; mylist.clear(); // sterge toate stringurile din lista&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Algoritmi:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; for_each(start, end, functor); // aplica functia functor tuturor elementelor listei&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // intre pozitia start si end (end exclusiv!)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; int cnt = count_if(start, end, functor); // numara stringurile din lista intre&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // pozitia start si end care respecta&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // conditia specificata in functia functor&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; list&amp;lt;string&amp;gt;::iterator position = find_if(start, end, functor);&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // gaseste primul string din lista intre pozitiile start&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // si end care respecta conditia specificata in functor&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; list&amp;lt;string&amp;gt;::iterator new_end = remove_if(start, end, functor);&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // sterge din lista toate elementel intre pozitiile start&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // si end care respecta conditia specificata in functor&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; stable_partition(start, end, functor); // rearanjeaza elementele listei intre pozitiile&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; // start si end conform conditiei specificate in functor&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lc</name></author>	</entry>

	<entry>
		<id>https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=471&amp;oldid=prev</id>
		<title>Lc la 28 decembrie 2005 17:53</title>
		<link rel="alternate" type="text/html" href="https://wiki.lug.ro/index.php?title=STL_list_HowTo&amp;diff=471&amp;oldid=prev"/>
				<updated>2005-12-28T17:53:54Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pagină nouă&lt;/b&gt;&lt;/p&gt;&lt;div&gt;STL list HowTo&lt;br /&gt;
&lt;br /&gt;
=Ce este STL=&lt;br /&gt;
&lt;br /&gt;
STL este una dintre cele mai interesante unelte pe care le are la dispoziţie&lt;br /&gt;
un programator C++. Constă într-o serie de containere precum&lt;br /&gt;
liste, vectori, seturi (sets), maps şi o serie de algoritmi care operează pe&lt;br /&gt;
aceste containere. Scopul bibliotecii este de a&lt;br /&gt;
standardiza aceste containere şi aceşti algoritmi, astfel încât programatorul nu trebuie să&lt;br /&gt;
le reinventeze de fiecare dată când are nevoie de aşa ceva.&lt;br /&gt;
&lt;br /&gt;
Biblioteca STL este parte integrală a limbajului C++ şi a fost standardizată în prima versiune&lt;br /&gt;
a standardului ISO C++ (1998).&lt;br /&gt;
&lt;br /&gt;
Unul din cele mai folosite tipuri de containere în C/C++ este lista înlănţuită.&lt;br /&gt;
Micul tutorial care urmează descrie modul de folosire a acestui tip de container.&lt;br /&gt;
&lt;br /&gt;
=Iniţializare=&lt;br /&gt;
&lt;br /&gt;
Iniţializarea unei liste folosind STL arată în felul următor:&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;list&amp;gt;&lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 int main (void) {&lt;br /&gt;
        list&amp;lt;string&amp;gt; Messages;&lt;br /&gt;
 &lt;br /&gt;
        return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Simplu spunând &amp;lt;i&amp;gt;list&amp;lt;string&amp;gt; mylist;&amp;lt;/i&amp;gt; am definit o listă &lt;br /&gt;
de &amp;lt;i&amp;gt;strings&amp;lt;/i&amp;gt; pe care am denumit-o &amp;lt;i&amp;gt;mylist&amp;lt;/i&amp;gt;. Compilarea&lt;br /&gt;
se face în felul următor:&lt;br /&gt;
&lt;br /&gt;
 # g++ test.cpp -o test&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;string&amp;lt;/i&amp;gt; poartă şi numele de &amp;lt;i&amp;gt;value type&amp;lt;/i&amp;gt; al listei. Acesta este tipul de variabilă din&lt;br /&gt;
containerul list. Să începem prin introducerea unor elemente în listă.&lt;br /&gt;
&lt;br /&gt;
=Inserarea de elemente în listă=&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;list&amp;gt;&lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 int main (void) {&lt;br /&gt;
        list&amp;lt;string&amp;gt; mylist;&lt;br /&gt;
        mylist.push_back(&amp;quot;Info: Program started&amp;quot;);&lt;br /&gt;
        mylist.push_back(&amp;quot;Warning: No customer records found&amp;quot;);&lt;br /&gt;
        mylist.push_front(&amp;quot;Error: Out of memory&amp;quot;);&lt;br /&gt;
        mylist.push_back(&amp;quot;Info: Processing customer list&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
        return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Am adăugat astfel patru elemente de tip &amp;lt;i&amp;gt;string&amp;lt;/i&amp;gt; în listă. Funcţia &amp;lt;i&amp;gt;push_back()&amp;lt;/i&amp;gt; adaugă&lt;br /&gt;
elementul la sfârşitul listei, în timp ce &amp;lt;i&amp;gt;push_front()&amp;lt;/i&amp;gt; adaugă elementul la începutul&lt;br /&gt;
listei.&lt;br /&gt;
&lt;br /&gt;
=Funcţia empty()=&lt;br /&gt;
&lt;br /&gt;
Este important să ştim dacă o listă conţine sau nu elemente. Aceasta se face folosind&lt;br /&gt;
funcţia &amp;lt;i&amp;gt;empty()&amp;lt;/i&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;list&amp;gt;&lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 int main (void) {&lt;br /&gt;
        list&amp;lt;string&amp;gt; mylist;&lt;br /&gt;
        mylist.push_back(&amp;quot;Info: Program started&amp;quot;);&lt;br /&gt;
        mylist.push_back(&amp;quot;Warning: No customer records found&amp;quot;);&lt;br /&gt;
        mylist.push_front(&amp;quot;Error: Out of memory&amp;quot;);&lt;br /&gt;
        mylist.push_back(&amp;quot;Info: Processing customer list&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
        if (!mylist.empty())&lt;br /&gt;
 	      printList(mylist);&lt;br /&gt;
 &lt;br /&gt;
        return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Detaliăm în continuare funcţia locală &amp;lt;i&amp;gt;printList()&amp;lt;/i&amp;gt; care are ca scop tipărirea&lt;br /&gt;
pe ecran a elementelor a mesajelor conţinute în listă.&lt;br /&gt;
&lt;br /&gt;
=Procesarea elementelor listei folosind instrucţiunea for=&lt;br /&gt;
&lt;br /&gt;
 void printList(list&amp;lt;string&amp;gt; &amp;amp;mylist) {&lt;br /&gt;
         list&amp;lt;string&amp;gt;::iterator iterator;&lt;br /&gt;
 &lt;br /&gt;
         for (iterator = mylist.begin(); iterator != mylist.end(); ++iterator) {&lt;br /&gt;
               // dereference iterator&lt;br /&gt;
               string msg = *iterator;&lt;br /&gt;
               cout &amp;lt;&amp;lt; msg &amp;lt;&amp;lt; endl;&lt;br /&gt;
         }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Accesarea elementelor listei se face folosind un iterator. Acesta poate fi&lt;br /&gt;
văzut în mod simplu ca un pointer la un element al listei. Dereferenţierea&lt;br /&gt;
lui rezultă întru-un obiect de tip &amp;lt;i&amp;gt;value type&amp;lt;/i&amp;gt; al listei, în cazul nostru&lt;br /&gt;
un &amp;lt;i&amp;gt;string&amp;lt;/i&amp;gt;. Iteratorul este iniţializat la primul element al listei, şi incrementat&lt;br /&gt;
pentru a parcurge lista până se ajunge la ultimul element. Toată logica&lt;br /&gt;
de incrementare este definită intern în operatorul ++ şi este invizibilă utilizatorului.&lt;br /&gt;
&lt;br /&gt;
Funcţia &amp;lt;i&amp;gt;end()&amp;lt;/i&amp;gt; returnează un element aflat după valoarea de sfârşit a listei.&lt;br /&gt;
Acest element nu poate fi dereferenţiat. Să vedem în continuare o altă&lt;br /&gt;
versiune a funcţie locale &amp;lt;i&amp;gt;printList()&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Procesarea elementelor listei folosind algoritmul for_each=&lt;br /&gt;
&lt;br /&gt;
 void printString(string&amp;amp; str) {&lt;br /&gt;
        cout &amp;lt;&amp;lt; str &amp;lt;&amp;lt; endl;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void printList(list&amp;lt;string&amp;gt; &amp;amp;mylist) {&lt;br /&gt;
        for_each(mylist.begin(), mylist.end(), printString);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Folosim în acest exemplu algoritmul generic &amp;lt;i&amp;gt;for_each&amp;lt;/i&amp;gt;. Trebuie să furnizăm&lt;br /&gt;
poziţia de început şi poziţia de sfârşit a intervalului de iterare şi un pointer&lt;br /&gt;
la o funcţie care primeşte un singur argument de tipul &amp;lt;i&amp;gt;value type&amp;lt;/i&amp;gt; al listei&lt;br /&gt;
şi returnează &amp;lt;i&amp;gt;void&amp;lt;/i&amp;gt;. Acesta din urmă poate fi în mod mai general un obiect&lt;br /&gt;
funcţie (&amp;lt;i&amp;gt;function object&amp;lt;/i&amp;gt;) sau &amp;lt;i&amp;gt;functor&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Observăm cum programul începe să se împartă în două secţiuni, una de control&lt;br /&gt;
(funcţia &amp;lt;i&amp;gt;printList()&amp;lt;/i&amp;gt; cu algoritmul generic &amp;lt;i&amp;gt;for_each&amp;lt;/i&amp;gt;) şi una de suport (funcţia &amp;lt;i&amp;gt;printString()&amp;lt;/i&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
=Numărarea elementelor listei folosind algoritmul count_if=&lt;br /&gt;
&lt;br /&gt;
Ca şi &amp;lt;i&amp;gt;for_each&amp;lt;/i&amp;gt;, &amp;lt;i&amp;gt;count_if&amp;lt;/i&amp;gt; primeşte poziţiile de început şi de sfârşit a intervalului&lt;br /&gt;
de iterare şi în cazul general un &amp;lt;i&amp;gt;functor&amp;lt;/i&amp;gt; care să determine dacă un element&lt;br /&gt;
specific al listei este luat în calcul sau nu în cadrul operaţiei de numărare:&lt;br /&gt;
&lt;br /&gt;
 // support section&lt;br /&gt;
 bool isInfoMessage(string&amp;amp; str) {&lt;br /&gt;
        return (str.substring(0, 4) == &amp;quot;Info&amp;quot;);&lt;br /&gt;
 }&lt;br /&gt;
  &lt;br /&gt;
 void printString(string&amp;amp; str) {&lt;br /&gt;
        cout &amp;lt;&amp;lt; str &amp;lt;&amp;lt; endl;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 // control section&lt;br /&gt;
 void printList(list&amp;lt;string&amp;gt; &amp;amp;mylist) {&lt;br /&gt;
        int infos = 0;&lt;br /&gt;
        infos = count_if (mylist.begin(), mylist.end(), isInfoMessage);&lt;br /&gt;
        cout &amp;lt;&amp;lt; infos &amp;lt;&amp;lt; &amp;quot; information messages&amp;quot; &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;&lt;br /&gt;
 &lt;br /&gt;
        for_each(mylist.begin(), mylist.end(), printString);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Funcţiile insert(), erase() şi algoritmul find_if=&lt;br /&gt;
&lt;br /&gt;
În mod similar putem folosi algoritmul generic &amp;lt;i&amp;gt;find_if&amp;lt;/i&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 list&amp;lt;string&amp;gt;::iterator info_it;&lt;br /&gt;
 info_it = find_if(mylist.begin(), mylist.end(), isInfoMessage);&lt;br /&gt;
 cout &amp;lt;&amp;lt; *info_it &amp;lt;&amp;lt; endl;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;find_if&amp;lt;/i&amp;gt; returnează un iterator la primul element găsit în intervalul de iteraţie care&lt;br /&gt;
respectă condiţia specificată în &amp;lt;i&amp;gt;isInfoMessage()&amp;lt;/i&amp;gt;.&lt;br /&gt;
Putem în continuare să adăugăm în listă un nou element după acesta folosind&lt;br /&gt;
funcţia &amp;lt;i&amp;gt;insert()&amp;lt;/i&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 list&amp;lt;string&amp;gt;::iterator new_msg;&lt;br /&gt;
 new_msg = mylist.insert(info_it, &amp;quot;Some new message&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
sau în mod similar putem să-l eliminăm din listă folosind funcţia &amp;lt;i&amp;gt;erase()&amp;lt;/i&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 mylist.erase(info_it);&lt;br /&gt;
&lt;br /&gt;
O metodă mai elegantă de eliminare de elemente din listă este&lt;br /&gt;
oferită de algoritmul &amp;lt;i&amp;gt;remove_if&amp;lt;/i&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
=Algoritmul remove_if=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;remove_if&amp;lt;/i&amp;gt; este un algoritm generic care combinat cu funcţia &amp;lt;i&amp;gt;erase()&amp;lt;/i&amp;gt; poate fi folosit&lt;br /&gt;
pentru eliminarea globală din listă a unei serii de elemente.&lt;br /&gt;
Un mic exemplu de implementare a unei funcţii care elimină toate mesajele &amp;quot;Info&amp;quot; din listă&lt;br /&gt;
folosind algoritmul &amp;lt;i&amp;gt;remove_if&amp;lt;/i&amp;gt; este după cum urmează:&lt;br /&gt;
&lt;br /&gt;
 void purgeList(list&amp;lt;string&amp;gt; &amp;amp;mylist) {&lt;br /&gt;
        list&amp;lt;string&amp;gt;::iterator new_end;&lt;br /&gt;
        new_end = remove_if(mylist.begin(), mylist.end(), isInfoMessage);&lt;br /&gt;
 &lt;br /&gt;
        mylist.erase(new_end, mylist.end());&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;remove_if&amp;lt;/i&amp;gt; elimină din listă toate elementele care îndeplinesc condiţia &amp;lt;i&amp;gt;isInfoMessage()&amp;lt;/i&amp;gt;, însă nu&lt;br /&gt;
distruge iteratorii listei pentru aceste elemente, astfel încât distanţa dintre &amp;lt;i&amp;gt;begin()&amp;lt;/i&amp;gt; şi &amp;lt;i&amp;gt;end() &amp;lt;/i&amp;gt; rămâne&lt;br /&gt;
neschimbată. Pentru eliminarea complectă a acestor elemente folosim iteratorul &amp;lt;i&amp;gt;new_end&amp;lt;/i&amp;gt; returnat&lt;br /&gt;
de &amp;lt;i&amp;gt;remove_if&amp;lt;/i&amp;gt; şi în mod explicit funcţia &amp;lt;i&amp;gt;erase()&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Codul C++ demo pentru tot ce s-a discutat până acum este listat în continuare:&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;iostream&amp;gt;&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;list&amp;gt;&lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 // support section&lt;br /&gt;
 bool isInfoMessage(const string &amp;amp;str) {&lt;br /&gt;
    return str.substr(0,4) == &amp;quot;Info&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void printString(const string&amp;amp; str) {&lt;br /&gt;
        cout &amp;lt;&amp;lt; str &amp;lt;&amp;lt; endl;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 // control section&lt;br /&gt;
 void purgeList(list&amp;lt;string&amp;gt; &amp;amp;mylist) {&lt;br /&gt;
        list&amp;lt;string&amp;gt;::iterator new_end;&lt;br /&gt;
        new_end = remove_if(mylist.begin(), mylist.end(), isInfoMessage);&lt;br /&gt;
 &lt;br /&gt;
        mylist.erase(new_end, mylist.end());&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void printList(list&amp;lt;string&amp;gt; &amp;amp;mylist) {&lt;br /&gt;
        int infos = 0;&lt;br /&gt;
        infos = count_if(mylist.begin(), mylist.end(), isInfoMessage);&lt;br /&gt;
        cout &amp;lt;&amp;lt; infos &amp;lt;&amp;lt; &amp;quot; information messages&amp;quot; &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl;&lt;br /&gt;
        for_each(mylist.begin(), mylist.end(), printString);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 int main (void) {&lt;br /&gt;
        list&amp;lt;string&amp;gt; mylist;&lt;br /&gt;
        mylist.push_back(&amp;quot;Info: Program started&amp;quot;);&lt;br /&gt;
        mylist.push_back(&amp;quot;Warning: No customer records found&amp;quot;);&lt;br /&gt;
        mylist.push_front(&amp;quot;Error: Out of memory&amp;quot;);&lt;br /&gt;
        mylist.push_back(&amp;quot;Info: Processing customer list&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
        if (!mylist.empty()) {&lt;br /&gt;
            // print list&lt;br /&gt;
            cout &amp;lt;&amp;lt; &amp;quot;*** before purge ***&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
            printList(mylist);&lt;br /&gt;
  &lt;br /&gt;
 	&lt;br /&gt;
            // play around&lt;br /&gt;
            cout &amp;lt;&amp;lt; &amp;quot;*** play around ***&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
            // find a info element&lt;br /&gt;
            list&amp;lt;string&amp;gt;::iterator info_it;&lt;br /&gt;
            info_it = find_if(mylist.begin(), mylist.end(), isInfoMessage);&lt;br /&gt;
            cout &amp;lt;&amp;lt; *info_it &amp;lt;&amp;lt; endl;&lt;br /&gt;
            // add a new element after this one&lt;br /&gt;
            list&amp;lt;string&amp;gt;::iterator new_msg;&lt;br /&gt;
            new_msg = mylist.insert(info_it, &amp;quot;Some new message here&amp;quot;);&lt;br /&gt;
            cout &amp;lt;&amp;lt; *new_msg &amp;lt;&amp;lt; endl;&lt;br /&gt;
            printList(mylist);&lt;br /&gt;
            // remove the element we just added&lt;br /&gt;
            mylist.erase(new_msg);&lt;br /&gt;
            printList(mylist);&lt;br /&gt;
  &lt;br /&gt;
 	       &lt;br /&gt;
            // remove Info messages&lt;br /&gt;
            purgeList(mylist);&lt;br /&gt;
  &lt;br /&gt;
 &lt;br /&gt;
            // print list&lt;br /&gt;
            cout &amp;lt;&amp;lt; &amp;quot;*** after purge ***&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
            printList(mylist);&lt;br /&gt;
      }&lt;br /&gt;
 &lt;br /&gt;
      return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Partiţionarea unei liste folosind funcţia splice() şi algoritmul stable_partition=&lt;br /&gt;
&lt;br /&gt;
În încheiere un exemplu ceva mai complicat folosind algorimul &amp;lt;i&amp;gt;stable_partition&amp;lt;/i&amp;gt;&lt;br /&gt;
şi funcţia &amp;lt;i&amp;gt;splice()&amp;lt;/i&amp;gt; pentru împărţirea argumentelor pasate unui program&lt;br /&gt;
pe linia de comandă în flaguri şi nume de fişiere. Observaţi absenţa&lt;br /&gt;
instrucţiunilor &amp;lt;i&amp;gt;for&amp;lt;/i&amp;gt; şi folosirea exclusivă a algoritmilor STL şi a &amp;lt;i&amp;gt;functorilor&amp;lt;/i&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Programul începe prin crearea unei liste cu argumentele pasate pe linia de comandă&lt;br /&gt;
când programul este rulat. &lt;br /&gt;
Algoritmul &amp;lt;i&amp;gt;stable_partition&amp;lt;/i&amp;gt; rearanjează elementele unei liste astfel încât elementele&lt;br /&gt;
care nu respectă o anumită condiţie preced pe cele care respectă condiţia respectivă.&lt;br /&gt;
Aceasta ne permite în cazul nostru să punem flagurile de program înaintea numelor de fişiere&lt;br /&gt;
în lista de argumente.&lt;br /&gt;
&lt;br /&gt;
Funcţia &amp;lt;i&amp;gt;splice()&amp;lt;/i&amp;gt; este folosită pentru împărţirea listei de argumente în două liste folosind&lt;br /&gt;
o condiţie evaluată pentru fiecare element al listei originale.&lt;br /&gt;
&lt;br /&gt;
Programul este prezentat în continuare:&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;iostream&amp;gt;&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;list&amp;gt;&lt;br /&gt;
 using namespace std;&lt;br /&gt;
 &lt;br /&gt;
 // suport section&lt;br /&gt;
 void printList(string &amp;amp;str) {&lt;br /&gt;
 	cout &amp;lt;&amp;lt; str &amp;lt;&amp;lt; endl;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 bool isFlag(string &amp;amp;str) {&lt;br /&gt;
 	return str.substr(0, 1) == &amp;quot;-&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 bool isFile(string &amp;amp;str) {&lt;br /&gt;
 	return !isFlag(str);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 // control section&lt;br /&gt;
 int main(int argc, char **argv) {&lt;br /&gt;
 	list&amp;lt;string&amp;gt; arguments;&lt;br /&gt;
 	list&amp;lt;string&amp;gt;::iterator start_of_files;&lt;br /&gt;
 	list&amp;lt;string&amp;gt; flags;&lt;br /&gt;
 	list&amp;lt;string&amp;gt; files;&lt;br /&gt;
 &lt;br /&gt;
 	for (int i = 1; i &amp;lt; argc; i++)&lt;br /&gt;
 		arguments.push_back(argv[i]);&lt;br /&gt;
  		&lt;br /&gt;
 	if (arguments.empty()) {&lt;br /&gt;
 		cout &amp;lt;&amp;lt; &amp;quot;No arguments&amp;quot; &amp;lt;&amp;lt; endl;&lt;br /&gt;
 		return 0;&lt;br /&gt;
 	}&lt;br /&gt;
  &lt;br /&gt;
 	int number_of_files =&lt;br /&gt;
 		count_if(arguments.begin(), arguments.end(), isFile);&lt;br /&gt;
  			&lt;br /&gt;
 	for_each(arguments.begin(), arguments.end(), printList);&lt;br /&gt;
  	&lt;br /&gt;
 	start_of_files =&lt;br /&gt;
 		stable_partition(arguments.begin(), arguments.end(), isFlag);&lt;br /&gt;
  	&lt;br /&gt;
 	flags.splice(flags.begin(), arguments, arguments.begin(), start_of_files);&lt;br /&gt;
 	files.splice(files.begin(), arguments, arguments.begin(), arguments.end());&lt;br /&gt;
  	&lt;br /&gt;
 	cout &amp;lt;&amp;lt; &amp;quot;***final argument list***&amp;quot; &amp;lt;&amp;lt; endl;		&lt;br /&gt;
 	for_each(arguments.begin(), arguments.end(), printList);&lt;br /&gt;
 	cout &amp;lt;&amp;lt; &amp;quot;***flag list***&amp;quot; &amp;lt;&amp;lt; endl;		&lt;br /&gt;
 	for_each(flags.begin(), flags.end(), printList);&lt;br /&gt;
 	cout &amp;lt;&amp;lt; &amp;quot;***file list - &amp;quot; &amp;lt;&amp;lt; number_of_files &amp;lt;&amp;lt; &amp;quot; files&amp;quot; &amp;lt;&amp;lt; endl;		&lt;br /&gt;
 	for_each(files.begin(), files.end(), printList);&lt;br /&gt;
  	&lt;br /&gt;
 	return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Compilarea se face simplu cu:&lt;br /&gt;
&lt;br /&gt;
 # g++ -o splice splice.cpp&lt;br /&gt;
&lt;br /&gt;
iar la rulare obţinem&lt;br /&gt;
&lt;br /&gt;
 # ./splice -w linux -o rocks&lt;br /&gt;
 -w&lt;br /&gt;
 linux&lt;br /&gt;
 -o&lt;br /&gt;
 rocks&lt;br /&gt;
 ***final argument list***&lt;br /&gt;
 ***flag list***&lt;br /&gt;
 -w&lt;br /&gt;
 -o&lt;br /&gt;
 ***file list - 2 files&lt;br /&gt;
 linux&lt;br /&gt;
 rocks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=În concluzie...=&lt;br /&gt;
&lt;br /&gt;
Pe lângă faptul că ne scuteşte de reinventarea unor containere clasice de fiecare dată când&lt;br /&gt;
avem nevoie de ele, STL impune o manieră de programare caracterizată&lt;br /&gt;
de absenţa buclelor de program (precum &amp;lt;i&amp;gt;for&amp;lt;/i&amp;gt; şi &amp;lt;i&amp;gt;while&amp;lt;/i&amp;gt;) prin introducerea conceptului de &amp;lt;i&amp;gt;functor&amp;lt;/i&amp;gt; sau&lt;br /&gt;
&amp;lt;i&amp;gt;function object&amp;lt;/i&amp;gt;. Aceasta duce la organizarea automată a codului programului în secţiuni de control&lt;br /&gt;
(zonele în care apelăm algoritmii) şi secţiuni de suport asociate secţiunilor de control (definirea&lt;br /&gt;
functorilor).&lt;br /&gt;
&lt;br /&gt;
Central pentru înţelegerea bibliotecii STL este conceptul de iterator. Este folosit pentru accesarea&lt;br /&gt;
elementelor din containere, iar fiecare algoritm primeşte astfel de iteratori ca parametrii. Iterarorii&lt;br /&gt;
definesc intervalul de iterare în container, iterarea din exemplele date în acest articol &lt;br /&gt;
făcându-se numai într-o singură&lt;br /&gt;
direcţie. STL ne furnizează însă şi alte tipuri de iteratori de exemplu bidirectional, read-only, write-only,&lt;br /&gt;
random, etc.&lt;br /&gt;
&lt;br /&gt;
Pentru o folosire adecvată a acestei biblioteci este necesară o studiere atentă a diferitelor&lt;br /&gt;
tipuri de iteratori şi ce iteratori sunt disponibili pentru fiecare container în parte. Evident acest articol&lt;br /&gt;
nu se vrea mai mult decât o introducere!&lt;/div&gt;</summary>
		<author><name>Lc</name></author>	</entry>

	</feed>