<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://so.v2.cs.unibo.it/wiki/index.php?action=history&amp;feed=atom&amp;title=%22classi%22_in_C</id>
	<title>&quot;classi&quot; in C - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://so.v2.cs.unibo.it/wiki/index.php?action=history&amp;feed=atom&amp;title=%22classi%22_in_C"/>
	<link rel="alternate" type="text/html" href="https://so.v2.cs.unibo.it/wiki/index.php?title=%22classi%22_in_C&amp;action=history"/>
	<updated>2026-04-16T18:37:34Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.5</generator>
	<entry>
		<id>https://so.v2.cs.unibo.it/wiki/index.php?title=%22classi%22_in_C&amp;diff=804&amp;oldid=prev</id>
		<title>Eddy: /* La mia soluzione (incapsulamento) */</title>
		<link rel="alternate" type="text/html" href="https://so.v2.cs.unibo.it/wiki/index.php?title=%22classi%22_in_C&amp;diff=804&amp;oldid=prev"/>
		<updated>2014-11-04T18:27:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;La mia soluzione (incapsulamento)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:27, 4 November 2014&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-l154&quot; &gt;Line 154:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 154:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;string.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;string.h&amp;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;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; 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: #202122; 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;int main (&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;int argc, char *argv&lt;/del&gt;)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; 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;int main (&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;void&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;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&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;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	classe *saluto;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	classe *saluto;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Eddy</name></author>
	</entry>
	<entry>
		<id>https://so.v2.cs.unibo.it/wiki/index.php?title=%22classi%22_in_C&amp;diff=795&amp;oldid=prev</id>
		<title>Eddy: /* Paradigma OOP in C */</title>
		<link rel="alternate" type="text/html" href="https://so.v2.cs.unibo.it/wiki/index.php?title=%22classi%22_in_C&amp;diff=795&amp;oldid=prev"/>
		<updated>2014-11-02T22:13:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Paradigma OOP in C&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:13, 2 November 2014&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-l21&quot; &gt;Line 21:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 21:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   ptr-&amp;gt;foo = &amp;amp;foo1;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   ptr-&amp;gt;foo = &amp;amp;foo1;&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;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   printf (&amp;quot;%d&amp;quot;, ptr-&amp;gt;foo(4));&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   printf (&amp;quot;%d&amp;quot;, ptr-&amp;gt;foo(4));&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; 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;  free(ptr);&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;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   return 0;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   return 0;&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;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Eddy</name></author>
	</entry>
	<entry>
		<id>https://so.v2.cs.unibo.it/wiki/index.php?title=%22classi%22_in_C&amp;diff=794&amp;oldid=prev</id>
		<title>Eddy: Come scrivere una &quot;classe&quot; in C?</title>
		<link rel="alternate" type="text/html" href="https://so.v2.cs.unibo.it/wiki/index.php?title=%22classi%22_in_C&amp;diff=794&amp;oldid=prev"/>
		<updated>2014-11-02T22:08:18Z</updated>

		<summary type="html">&lt;p&gt;Come scrivere una &amp;quot;classe&amp;quot; in C?&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Paradigma OOP in C=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Quando in classe abbiamo parlato di [[puntatori a funzione]] mi e` subito venuto in mente una cosa del genere:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int foo1 (int x);&lt;br /&gt;
&lt;br /&gt;
typedef struct classe&lt;br /&gt;
{&lt;br /&gt;
  int data;&lt;br /&gt;
  int (*foo) (int x);&lt;br /&gt;
} classe;&lt;br /&gt;
&lt;br /&gt;
int main (void)&lt;br /&gt;
{&lt;br /&gt;
  classe *ptr;&lt;br /&gt;
  ptr = (classe*) malloc (sizeof (classe));&lt;br /&gt;
  ptr-&amp;gt;foo = &amp;amp;foo1;&lt;br /&gt;
  printf (&amp;quot;%d&amp;quot;, ptr-&amp;gt;foo(4));&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int foo1 (int x)&lt;br /&gt;
{&lt;br /&gt;
  return x;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ptr-&amp;gt;foo()''' assomiglia molto ad un metodo!&lt;br /&gt;
&lt;br /&gt;
===Primi problemi===&lt;br /&gt;
&lt;br /&gt;
* se l'utente mi cambia l'indirizzo a cui punta foo?&lt;br /&gt;
* come rendo privati eventuali campi che voglio nascondere all'utente? [[Incapsulamento]]&lt;br /&gt;
* come derivo nuove classi a partire da quelle gia` definite? [[Ereditarietà]]&lt;br /&gt;
* come implemento il [[Polimorfismo]]?&lt;br /&gt;
&lt;br /&gt;
===La mia soluzione (incapsulamento)===&lt;br /&gt;
&lt;br /&gt;
* Scrivere una &amp;quot;classe&amp;quot; per modulo, nel relativo header dichiarare solo &amp;quot;i metodi che dovranno essere public&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#ifndef H__CLASS_H__H &lt;br /&gt;
#define H__CLASS_H__H &lt;br /&gt;
&lt;br /&gt;
/* la &amp;quot;classe&amp;quot; classe contiene una parola che puo`:&lt;br /&gt;
 * -essere cambiata&lt;br /&gt;
 * -essere stampata&lt;br /&gt;
 */&lt;br /&gt;
struct classe;&lt;br /&gt;
typedef struct classe classe;&lt;br /&gt;
&lt;br /&gt;
/* constructor */&lt;br /&gt;
classe* classeCreate(void);&lt;br /&gt;
&lt;br /&gt;
/* destructor */&lt;br /&gt;
void classeDestroy(classe *classe_ptr);&lt;br /&gt;
&lt;br /&gt;
/* public methods */&lt;br /&gt;
void cambiaParola (classe *classe_ptr, char *hello);&lt;br /&gt;
void stampa(classe *classe_ptr);&lt;br /&gt;
&lt;br /&gt;
#endif &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Da notare che non ho definito la struttura, in questo modo l'utente che andra` ad utilizzarla non potra`&lt;br /&gt;
accedere ai campi, sara` costretto ad utilizzare &amp;quot;i metodi&amp;quot; dichiarati.&lt;br /&gt;
&lt;br /&gt;
* Implementare la relativa &amp;quot;classe&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang = &amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;class.h&amp;quot;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
struct classe &lt;br /&gt;
{&lt;br /&gt;
	/* i campi sono privati!! */&lt;br /&gt;
	char *hello;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* constructor implementation */&lt;br /&gt;
&lt;br /&gt;
classe* classeCreate(void)&lt;br /&gt;
{&lt;br /&gt;
	classe *classe_ptr = NULL;&lt;br /&gt;
&lt;br /&gt;
	classe_ptr = (classe* ) malloc (sizeof (classe));&lt;br /&gt;
	if(classe_ptr == NULL)&lt;br /&gt;
					return NULL;&lt;br /&gt;
	memset (classe_ptr, 0, sizeof (classe));&lt;br /&gt;
&lt;br /&gt;
	classe_ptr-&amp;gt;hello = (char *) malloc (9*sizeof (char));&lt;br /&gt;
	strcpy (classe_ptr-&amp;gt;hello, &amp;quot;default&amp;quot;);&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
	return classe_ptr;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* destructor implementation */&lt;br /&gt;
&lt;br /&gt;
void classeDestroy (classe *classe_ptr)&lt;br /&gt;
{&lt;br /&gt;
	if (classe_ptr == NULL)&lt;br /&gt;
	{&lt;br /&gt;
		fprintf( stderr, &amp;quot;Null pointer error, classe_ptr is NULL\n&amp;quot;);&lt;br /&gt;
		exit (-4);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/* sono sicuro che hello != null, poiche` l'utente&lt;br /&gt;
	 * non puo` gestirla al di fuori dei public methods &lt;br /&gt;
	 */&lt;br /&gt;
	free (classe_ptr-&amp;gt;hello);&lt;br /&gt;
	free (classe_ptr);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* public methods implementation */&lt;br /&gt;
&lt;br /&gt;
void cambiaParola (classe *classe_ptr, char *src)&lt;br /&gt;
{&lt;br /&gt;
	/* dealloco *hello e creo spazio per *src */&lt;br /&gt;
	free (classe_ptr-&amp;gt;hello);&lt;br /&gt;
&lt;br /&gt;
	classe_ptr-&amp;gt;hello = (char *) malloc &lt;br /&gt;
					( (strlen(src) +1)*sizeof(char));&lt;br /&gt;
	strcpy (classe_ptr-&amp;gt;hello, src);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void stampa (classe *classe_ptr)&lt;br /&gt;
{&lt;br /&gt;
	printf (&amp;quot;%s\n&amp;quot;, classe_ptr-&amp;gt;hello);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* private methods */&lt;br /&gt;
&lt;br /&gt;
static void foo (void)&lt;br /&gt;
{&lt;br /&gt;
	/* something */&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Per finire importare la &amp;quot;classe&amp;quot; ed utilizzarla:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang = &amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;quot;class.h&amp;quot;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
int main (int argc, char *argv)&lt;br /&gt;
{&lt;br /&gt;
	classe *saluto;&lt;br /&gt;
	&lt;br /&gt;
	/* creo la &amp;quot;classe&amp;quot; saluto */&lt;br /&gt;
	saluto = classeCreate ();&lt;br /&gt;
	&lt;br /&gt;
	/* provo a stampare, N.B. non ho la minima&lt;br /&gt;
	 * idea di come sia fatta la struttura.&lt;br /&gt;
	 * NON posso fare:&lt;br /&gt;
	 * printf (&amp;quot;%s&amp;quot;, stampa-&amp;gt;hello);&lt;br /&gt;
	 */&lt;br /&gt;
&lt;br /&gt;
	//printf (&amp;quot;%s&amp;quot;, stampa-&amp;gt;hello);&lt;br /&gt;
	stampa (saluto);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	/* cambio la parola, N.B. non ho la minima&lt;br /&gt;
	 * idea di come sia fatta la struttura.&lt;br /&gt;
	 * NON posso fare:&lt;br /&gt;
	 * strcpy (stampa-&amp;gt;hello, &amp;quot;ciao&amp;quot;);&lt;br /&gt;
	 */&lt;br /&gt;
&lt;br /&gt;
	//strcpy (stampa-&amp;gt;hello, &amp;quot;ciao&amp;quot;);&lt;br /&gt;
	cambiaParola (saluto, &amp;quot;ciao&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
	stampa (saluto);&lt;br /&gt;
&lt;br /&gt;
	classeDestroy (saluto);&lt;br /&gt;
&lt;br /&gt;
	return 0;	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Conclusione=&lt;br /&gt;
&lt;br /&gt;
Non so se il modo in cui ho affrontato il problema sia corretto o errato, sono aperto a qualunque suggerimento (anche uno stravolgimento della mia idea e` ben accetto).&lt;br /&gt;
Rimangono ancora &amp;quot;aperti&amp;quot; i problemi:&lt;br /&gt;
# [[Ereditarietà]]&lt;br /&gt;
# [[Polimorfismo]]&lt;br /&gt;
&lt;br /&gt;
Sarei felice di ricevere suggerimenti in proposito!&lt;br /&gt;
&lt;br /&gt;
PS. Non ho scritto questo Topic per utilizzare il paradigma OOP in C, ero solo curioso di vedere se fossi riuscito o meno ad implementare qualcosa di simile al concetto di classe.&lt;br /&gt;
&lt;br /&gt;
=Download File=&lt;br /&gt;
&lt;br /&gt;
[https://drive.google.com/file/d/0B0FK1WI24sl6a3oyYUlvQVlrN0k/view?usp=sharing Download: classi.tgz]&lt;/div&gt;</summary>
		<author><name>Eddy</name></author>
	</entry>
</feed>