mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: clicka dentro una shape

ciao,
ho bisogno di aiuto su di una routine che stabilisca se il mouse ha clickato
dentro una shape precedentemente disegnata...
potete aiutarmi?

...

Ti trovi sotto Windows? Sei in 2D?
Hai a disposizione la lista dei vertici della forma?
In caso affermativo per tutte e tre le domande, potresti usare o il metodo "Ray-Shooting"
oppure quello dell'area segnata ("Signed Area"). Entrambi sono di
complessita lineare (Proporzionale al numero dei vertici della forma).
Descriverò rapidamente il primo. Chiamerò p il poligono che rappresenta la forma in
questione ed a=(x,y) il punto di hit-test. Ora prendi un punto a'=(x',y) con x'<x e stante
totalmente alla sinistra di p. Inizia a muoverti lungo la direzione x'-x. Lungo questo
spostamento in linea retta, intersecherai il poligono p un certo numero di volte (in
entrata oppure in uscita): la prima intersezione significa che stai entrando nel poligono,
la seconda che ne stai uscendo e così via, fino ad arrivare ad a. In generale, ogni numero
dispari di intersezioni che precedono a indica che il punto in questione è contenuto in p,
mentre ogni numero pari vuol dire che a è al di fuori di p.
Se ti dovesse servire, posso postare del codice. Non lo faccio ora perché, se qualche mia
assunzione non è corretta, scriverei del codice totalmente inutile. In genere, parlando di
grafica, è utile specificare almeno a grandi linee il contesto in cui ci si trova e, se si
vuole qualcosa più di un semplice reference ad un algoritmo o una sua spiegazione
generale, anche la piattaforma, l'ambiente di sviluppo oppure le librerie grafiche usate
sono informazioni necessarie.
Andrea
Newsgroup: it.comp.lang.c++
Titolo: Classe Fixed Point

sapete dove trovarne in rete?
chisà perchè visual c++ non c'è l'ha?
ciao e grazie.

 chisà perchè visual c++ non c'è l'ha?
visual c++ non e' un linguaggio ecco perche'.
Hai visto invece la libreria STL del c++?
-- 
Posted from [194.214.173.28] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.lang.c++
Titolo: spezzare un programma

Salve,
sono nuovo di questo NG,
Ho realizzato un programma con il Borland C++ 5.0 (win95) dell'ordine di
3000 linee. Volevo sapere se c'è un modo per spezzarlo, semmai copiando le
varie funzioni in altri file e lasciando il main nel programma principale.
La suddivisione deve avvenire al livello del sorgente, mentre l'eseguibile
dovrebbe essere un unico file .exe
Scusate la domanda un po' sciocca, ma non ho alcuna esperienza in questo
campo.
Ringrazio tutti quelli che mi risponderanno.
Ciao!

 dovrebbe essere un unico file .exe
Immagino che un po' di taglia/incolla con il tuo editor preferito (al
limite con il notepad) potrebbe servire allo scopo.
EMG

 wrote in message
384BBA95...@flashnet.it...

e come faccio a richiamare le funzioni esterne al mio programma contenente
il main?

Basta dare una occhiata a qualsiasi libro di C++, cerca alla voce 
header...
Eventualmente trovi qualcosa sul mio tutorial su 
www.programmazione.it
Paolo
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

 il main?
La tecnica esatta varia da compilatore a compilatore ma in generale devi
compilare tutti i singoli sorgenti e poi dire al linker di collegarli
tutti assieme nell'eseguibile finale. Ah, devi anche scriverti uno o più
header file contenenti le dichiarazioni delle funzioni che vuoi
utilizzare e includere questi nei sorgenti che le utilizzano.
EMG


e come faccio a chiamare le funzioni esterne al mio file contenente il main?

Newsgroup: it.comp.lang.c++
Titolo: DLX

come si implementa un costrutto del tipo
if (condizione)
{
...
}
else if (condizione)
{
...
}
in DLX?
grazie

 in DLX?
http://www.news.nic.it/manif/it.comp.lang.c++.txt
-- 
Gerolamo

 ha scritto nel messaggio
news:bihvqm$9hifo$1...@ID-202547.news.uni-berlin.de...


 questo.
Sbagli:
1- Non so cosa sia DLX, ma se si tratta di un linguaggio e non ha un NG
dedicato, allora puoi chiedere su it.comp.lang
http://www.news.nic.it/manif/it.comp.lang.txt
2- Il quoting, questo sconosciuto:
http://it.geocities.com/usenetitalia/quoting.html
-- 
Gerolamo
Newsgroup: it.comp.lang.c++
Titolo: Correttore ortografico

Salve a tutti,
mi serve un correttore ortografico C++ da inserire in un progetto sviluppato
in Visual Studio.
Ho già scaricato l'Aspell della Gnu, ma non sono riuscita ad usarlo! Sarebbe
grandioso poter avere direttamente l'header e il cpp!
Vi ringrazio anticipatamente!
Saluti!

 ha scritto nel messaggio
news:gkqf9.6916$Oz2.1...@twister2.libero.it...

1) ma non hai trovato i sorgenti?
2) occhio alla licenza.......
Raffaele

Si, ho trovato i sorgenti ma non so come usarli!! Ho iniziato ad usare
questo linguaggio solo da poco!
Sei sicuro che avrň problemi ad usarlo, per la licenza? Ma non č open
source?
Grazie!

> Ma non è open source?
Se e' sotto GPL (Gnu Public License), devi rendere GPL anche il tuo codice.
Ciao!
*** Azimuth ***

 source?
Aspell è GPL (
http://www.gnu.org/licenses/licenses.html
). Se usi porzioni
del codice e le incorpori nel tuo programma, quest'ultimo dovrà essere
rilasciato sotto GPL. Se sfrutti Aspell come prodotto esterno a sè stante
mediante qualche meccanismo di comunicazione (ad esempio, invocandone
l'eseguibile), il tuo programma non sarà vincolato alla GPL.
Comunque, qui siamo OT. Passo e chiudo.
Max

Grazie dei suggerimenti!
Ho dimenticato di dirvi che io lavoro sotto Windows XP, mentre mi sono
accorta che Aspell è pensato x sistemi Unix. Devo trovare un'alternativa!
Saluti!

 ha scritto nel messaggio
news:wgJf9.13324$6O4.2...@twister1.libero.it...

beh, puoi sempre provare a fare un port! hehe! imho qualcuno interessato lo
trovi.... magari non per xp in particolare, ma win32 in generale...
almeno...io sono contento che qualcuno abbia portato per es wget per win32,
e anche per altre cose
ciau!
Raffaele

Newsgroup: it.comp.lang.c++
Titolo: mfc42.dll dove posso trovarla??

grazie a chi saprą aiutarmi.
 
soft...@quasar.it

Newsgroup: it.comp.lang.c++
Titolo: VC++ : Cambiare il font di una label in un CTreeCtrl

Ciao a tutti, sono un nuovo utente della newsgroup.
Vorrei sapere come si può cambiare il font di una label in un'oggetto
CTreeCtrl, e come ordinare all'oggetto stesso di ridisegnare quella label
con quel formato (mi accontento anche solo di mettere in grassetto la
stringa).
Grazie in anticipo dell'aiuto.
Matteo

 con quel formato (mi accontento anche solo di mettere in grassetto la
Hai postato, separatamente, questa stessa domanda anche
su it.comp.programmare.win32, e li` ti ho risposto (non
sapendo che avevi fatto due post identici).
Non farlo, per favore.  Sprechi il tempo e la banda passante
di tutti.  Se un post deve davvero andare in piu` gruppi
(e quasi mai e` cosi`, in particolare non lo era in questo
caso), usa il cross-post, cioe` fai un post solo diretto a piu`
gruppi simultaneamente (NON 2 o + post identici, MAI).
Alex
Newsgroup: it.comp.lang.c++
Titolo: window title bar

is there any easy way to tell if a window has a title bar?
thx


You're OT here... Please, next time try on it.comp.programmare.win32 =)
BOOL HasTitleBar(hWnd) {
CWindow myWindow;
    myWindow.Attach(hWnd);
    DWORd dwStyles = myWindow.GetStyle();
    if (dwStyles & WS_CAPTION)
        return TRUE;
    return FALSE;
}
(this is for Microsoft VC++, and uses ATL library... You can either use CWnd
(MFC))
-Tharkas

Newsgroup: it.comp.lang.c++
Titolo: scrivere e leggere un singolo bit

Avrei la necessità di scrivere e leggere
un singolo bit direttamente sull' hardisk.
quali sono le API.


Non e' possibile. Devi leggere l'intero byte, modificare il bit che ti
interessa, e riscriverlo. In linea di principio si puo' fare col
linguaggio standard, per le API rivolgiti al newsgroup specifico del tuo
sistema operativo.
Ciao,
Nicola

Newsgroup: it.comp.lang.c++
Titolo: Come splittare una stringa??

Ho in gresso una stringa separata da ";"
per esempio 1;aaa;bb;cc;;;3;
la vogio mettere in un vector
se fosse separato da spazi saprei farlo con una copy e un 
istream_iterator<string> ma con i ;
Ovviamente so che potrei farlo con un while a mano
ma se volessi continuare ad utilizzare una copy?
-- 
Simone

Il 20 Mar 2003, 12:11, Simone <simonebevilacqua@_NoSPan_hotmail.com> ha
scritto:

una cosa di questo tipo (non testato)?
#include <iostream>
#include <string>
#include <vector>
int main()
{
	std::vector<std::string> vs;
	std::string s = "cippo|lippo|pippo|za|";
	std::string::size_type sPos1=0, sPos2=0;
 
	// cerca le sottostringhe e riempie il vector
	while ((sPos1=s.find_first_of('|', sPos1)) != std::string::npos )
	{
		vs.push_back(s.substr(sPos2, sPos1-sPos2));
		sPos2 = ++sPos1;
	}
 
	// mostra il contenuto del vector
	std::vector<std::string>::iterator vIter;
	for(vIter=vs.begin(); vIter!=vs.end();++vIter)
	{
		std::cout << *vIter << std::endl;
	}
}
--
Gerolamo
--------------------------------
Inviato via 
http://usenet.libero.it



una cosa di questo tipo (non testato)?


 	
Grazie comunque per l'interessamento
effettivamente anche io ho implementato una soluzione simile (anchessa 
basata su while);
volevo sapere pero se c'era qualche iteraratore/tokenizzatore che potevo 
utilizzare
in java avrei pototo scrivere
String s = "a;;a;;a"
String [] v = s.split(";");
ma anche questo secondo approccio sembra non esistere in c++

 
 
http://google.it/groups?selm=Pine.LNX.4.21.030308...@blomma.comm2000.it
Max

 ma anche questo secondo approccio sembra non esistere in c++
Cerca tra i post precedenti la classe StringTokenizer.
--
Domenico Testa - Studente

 ma anche questo secondo approccio sembra non esistere in c++
Beh,puoi sempre farti una funzioncina che lo faccia per te...
Newsgroup: it.comp.lang.c++
Titolo: cast

ciao a tutto il ng..
ho un problema di casting ch enon riesco a risolvere.
sto scriv un progr formato di 2 parti. un server ed un client.
il client manda il proprio pid al server ed il server lo stampa..
includo pure la sysmacro.h 
il programma gira, ma non stampa sul terminale del server il pid del 
cliente, bensì un numero diverso.(dove se lo piglia?).
***************************cliente********************************
#include <sys/types.h>
#include <sys/stat.h>
#include <sysmacro.h>         //è definita sotto
#include <fcntl.h>
#include <unistd.h>
#define MAXS 100
int main(){
        int n, fd;
        int nome=getpid();
        char *prova="/root/eserC/pipe";//pipe su cui scrivero'
 
        char pacch[1];
        pacch[1]=(char)nome;//fa il cast di nome da char[] a int
 
        IFERROR(fd=open(prova, O_WRONLY), "aprendo");//apre il pipe di scr
ittura sul gestore
 
 
        IFERROR(write(fd,pacch,MAXS),"scrivendo");//scrive sul pipe del gest
return(0);
}
***************************************************************
************server******************************
#include <sys/types.h>
#include <sys/stat.h>
#include <sysmacro.h>
#include <fcntl.h>
#include <signal.h>//macro per i segnali
#include <unistd.h>
#define MAXS 100
int main(){
        int fd;
        char messaggio[MAXS];
        char *prova="/root/eserC/pipe";
        mkfifo(prova, 0644);                          //creo una pipe
        IFERROR(fd=open(prova, O_RDONLY), "aprendo"); //la apro
        while(1);                                     //lo metto in c
iclo x attendere info
        while(read (fd, messaggio, MAXS) >0)         //e legge quello che 
gli manda il client
        WRITE(messaggio);                             //stampa a video ci
o' che arriva---------ma la stampa la deve fare di un int
        }
        IFERROR(close(fd),"chiudendo");
return(0);}
********************************************************************
*****************sysmacro.h************************************
/*File:          sysmacro.h
 * macro x chiamate di sistema*/
#include <stdio.h>
#include<stdlib.h>
#include <string.h>
#include <errno.h>
#include <unistd.h>
#define MAX 100 //x interi
#define IFERROR(s,m) if ((s)==-1) {perror(m); exit(errno);}
#define IFERROR3(s,m,c) if ((s)==-1) {perror(m);c;}
#define WRITE(m) IFERROR (write(STDOUT,m,strlen(m)), m);
#define WRITELN(m) WRITE(m);WRITE("\n");
#define STDIN
#define STDOUT 1
#define STDERR 2
*********************************************************************
grazie a tutti quelli che ci provano.
-- 
byez, gattorosso2k
-Chi di voi crede di essere religioso, eccede in superbia!-

 gli manda il client
// Se leggi solo il PID e' inutile che tu legga di piu'.
	const int size = std::numeric_limits<int>::digits + 1;
	char * messaggio = new char[size];
	if ( read(fd,messaggio,size) == size )
	    std::cout << *(static_cast<int *>(messaggio)) << '\n';
Non ho neanche provato a compilarlo. E' comunque uno spunto.
Ciao,
Nicola

 Nicola
adesso mi metto al lavoro, comunque per adesso grazie di tutto,
byez, gattorosso 2k
-chi di voi crede di essere religioso, pecca di superbia!
Newsgroup: it.comp.lang.c++
Titolo: Info compilatore MVC++ 5.0

Ciao a tutti 
C'e qualcuno che sa dove è finita l'istruzione INTDOS nel compilatore MVC++
5.0
grazie.


Essendo sparito il DOS e' sparita anche la funzione.
Detto un po' meglio: poiche' Win95 e' un sistema operativo a 32 bit, ti
permette di girare applicazioni scritte per DOS (SO a 16 bit) ma non
puoi pretendere che la gestione di molte funzionalita' sia la medesima 
che nel DOS.
Pertanto, o ti fai un programma DOS a 16 bit (con un compilatore a 16
bit, quindi non MVC++ 5.0) e ti accontenti di farlo girare ugualmente
su Win95, oppure vedi di usare le funzionalita' del nuovo SO a 32 bit,
con i suoi metodi di programmazione.
Se esprimi meglio qual e' il tuo problema, potrai trovare tante persone
(anche con molta piu' esperienza di me) disposte a darti una mano.
Ciao
Lorenzo

con i suoi metodi di programmazione.
La soluzione migliore sarebbe quella di prendersi il VC++ 1.52c, che
supporta (se non ricordo male) anche il DOS.
Ad ogni modo, sotto Win95 e Win98 le chiamate dirette ad interrupt sono
spesso ancora supportate, quindi con un po' di assembly...
Sotto NT non c'e' verso, lo HAL non lo permetterebbe mai (anche perche' NT
e' concettualmente multipiattaforma, e gli interrupt sono strettamente
legati alla CPU).
Davide Marcato.
----------------------------------------------------
| -- Freelance International Consultant
| -- Win32/MFC/COM Development & Training
| -- Technical Writer & Speaker
----------------------------------------------------
| -- Email: 
mar...@programmers.net
| -- Web: 
http://www.DavideMarcato.com
----------------------------------------------------

Newsgroup: it.comp.lang.c++
Titolo: richiesta aiuto per dll

Sto cercando di far comunicare VB con una dll sviluppata con Visual C++
5.0.
Non riesco a capire come inportare i dati inviati da VB nella funzione
della mia DLL.
Se volete aiutarmi scrivete a 
maxg...@tin.it
Grazie per la vostra attenzione e collaborazione..

ne quale scrivi qualcosa del genere:
Si`, questo puo` funzionare; a me pero` piace ancora
di piu` l'approccio adottato da Bruce McKinney in
"Hardcore Visual Basic" (per facilitare l'uso da VB
delle DLL di sistema di Windows): scrivere una
libreria dei tipi in IDL, compilarla con MIDL, e da
VB agganciarla col dialogo References.  (Se poi
la DLL si fa "sin da subito" a standard COM, com'e`
facile fare con ATL, allora l'IDL ce lo scrive e ce
lo compila il Wizard -- la mia vera preferenza:-).
Alex

Newsgroup: it.comp.lang.c++
Titolo: Problema strano composizione classi

raga mi succedde una cosa stranissima(almeno per me): ho due classi, in una 
dichiaro un oggetto dell'altra ma quando compilo mi da un errore strano(dice 
che manca il ; prima della variabile) invece se nella classe dichiaro un 
puntatore all'altra classe e l'oggetto l'alloco dinamicamente mi compila 
perfettamente. Cosa può essere? 

 ha scritto nel messaggio 
news:dpo263$g2d$1...@newsreader.mailgate.org...

Ciao. forse è il caso di postare il codice della classe e l'errore di 
compilazione.
Newsgroup: it.comp.lang.c++
Titolo: overloading operator<< >> e visual studio6.0

>, sulla non accessibilità di questi agli elementi privati delle
classi, nonostante dichiarati friend, ho scoperto che è dovuto a un baco
Microsoft. Installato il Service Pack3 questo problema è scomparso.
Peccato abbia perso una settimana di lavoro!
Spero che qualcuno legga e se la risparmi!
Saluti e grazie a chi mi ha risposto
Luca

Che devo fare per installare il service pack 3?
Ho visual studio installato a lavoro e prima o poi i bachi mi capitano fra
capo e collo.

Penso di avere il tuo stesso problema,
come faccio a scaricare il service pack 3?

 come faccio a scaricare il service pack 3?
Questo messaggio non riguarda tanto il linguaggio C++ in se, quanto
piuttosto problematiche che sono caratteristiche di un particolare
compilatore e di un particolare ambiente operativo.
Per questo motivo il messaggio e' off-topic in questo gruppo, di cui
ti prego di leggere il charter; puoi avere maggior fortuna chiedendo
su it.comp.programmare.win32 .
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

Newsgroup: it.comp.lang.c++
Titolo: C++ Informer, grazie EMG.

Caro Enrico,
ti voglio ringraziare pubblicamente per  la cortesia e l'impegno che
dedichi al ng.
Grazie anche per Informer, ovviamente!
--
-------------
Lello Mele
Via San Sebastiano, 22
84036 Sala Consilina (SA)
P.Tel.:0347/643.35.25
HOMEPAGE:
http://www.programmazione.it
http://tcp.come.to
eMAIL:
v...@libero.it
me...@programmazione.it
PROFILE:
http://www.programmazione.it/index.php?entity=eauthor&idAuthor=83
-------------
"Esistono due modi per elaborare il progetto di un software.
 Il primo consiste nel renderlo semplice al punto tale che non
 manifesti lacune evidenti. Il secondo consiste nel renderlo
 complicato al punto tale che non manifesti lacune evidenti.
 Il primo metodo e' di gran lunga piu' difficile." [C.A.R. Hoare]

 Grazie anche per Informer, ovviamente!
Di niente.
EMG
Newsgroup: it.comp.lang.c++
Titolo: Problemi con classi template

Ho cercato di realizzare  una  classe pila template realizzata con array(un
pò più semplice di quella che ho postato qualche giorno fà e che cercherò di
convertire in template al più presto...come suggeritomi da Andrea Ferro), ma
ho qualche problemino.
Questa è
la specifica:
template <class T> class pila{
public:
pila();
void push(const T e);
void pop(T& e);
void top(T& e)const;
void stampa()const;
bool empty()const;
bool full()const;
private:
int testa;
static const int N=100;
T array[N];
};
#endif
e l'implementazione:
#include "pila.h"
#include <iostream.h>
template <class T> pila<T>::pila(){testa=0;}
template <class T> void pila<T>::push(const T e){array[testa]=e;testa++;}
template <class T> void pila<T>::pop(T& e){testa--;e=array[testa];}
template <class T> void pila<T>::top(T& e)const{e=array[testa-1];}
template <class T> bool pila<T>::empty()const{return (testa==0);}
template <class T> bool pila<T>::full()const{return testa==N;}
template <class T> void pila<T>::stampa()const{
  for(int i=0;i<testa;i++)
    cout<<"array["<<i<<"]: "<<array[i]<<endl;
}
andando ad usare la classe in un main del tipo:
#include <iostream.h>
#include <stdlib.h>
#include "pila.h"
int main()
{
pila<int> a;
system("PAUSE");
return 0;
}
mi da un'errore di: c:\...cut....\utente.o(.text+0x28):utente.cpp: undefined
reference to `pila<int>::pila(void)'
e se definisco il costruttore nella specifica risolvo qull'errore per il
costruttore, ma  mi da comunque lo stesso identico
errore per le funzioni membro che uso(come push() o stampa()).
Dove diavolo sbaglio?
Spero caldamente in un vostro aiuto!!

 Max
Ciao Max,
nel caso di templates dovresti mettere tutta l'implementazione dei metodi
nel file header senza utilizzare il file.cpp
Nella parte della specifica che hai postato c'e' poi un #endif alla fine del
template che non corrisponde a nessun #ifdef. forse hai dimenticato
qualcosa.
Maurus

 qualcosa.
Si un copia e incolla riuscito male, manca questa parte:
#ifndef pilad_H_
#define pilad_H_
Grazie ancora!
Newsgroup: it.comp.lang.c++
Titolo: [?] Novellino cerca chiarimenti

Ciao a tutto il NG
    programmo in visual basic da qualche anno, e da circa una settimana ho
preso in mano un libro di C++ finendolo.
    + o - ho capito (+ o -) ho solo qualche perplessità e vorrei rigirare a
voi queste domande in modo da scoprire qualcosa che magari non è stata
inserita sul libro (che purtroppo è un libro di testo scolastico e quindi
prende le cose un po alla leggera per rendere il concetto).
    I chiarimenti che mi piacerebbe avere sono su alcuni simboli
(chiamiamoli così) completamente assenti in altri linguaggi di
programmazione da me conosciuti e nel dettaglio vorrei chiedere anche a voi
a cosa servono esattamente e come funzionano i seguenti simboli
    *        (dovrebbe puntare all'indirizzo di memoria di una variabile)
    &       (dovrebbe puntare al valore di quella variabile)
    _        (non credo di averlo capito)
    __      (non credo di averlo capito)
    :         (non credo di averlo capito)
    ::        (dovrebbe indicare il workspace, ma non mi è chiaro il suo
utilizzo)
    ->      (non credo di averlo capito)
    Approfitto ancora della vostra generosità chiedendovi ancora 2 cose
        La prima, come faccio a collegarmi ad un database (access, my-sql)
sia DSN che DSN-less (per db che si trovano su internet è lo stesso poi ?)
        La seconda (e spero di non essere OT) come faccio a creare progetti
visual c++. In visual basic, indicavo di voler inserire una finestra,
buttavo dentro tutti i controlli che mi servivano e il codice nasceva da se
(+ o -), in VC++ (visto che non è uno sprecone di risorse come il VB) come
faccio e cosa devo aggiungere ? (intendo anche a livello di .h da includere)
        Sperando di essere stato chiaro,
        Sperando di non essere massacrato
        Ricordando che sono solo 7 giorni che so di non conoscere il C++
    Ringrazio tutti per ogni eventuale risposta.
            Ciao, Rocco

 cose
per entrambe
it.comp.programmare.win32
ciao
--
Gerolamo

 
Penso proprio che sia il contrario

 Penso proprio che sia il contrario
Confermo
-- 
-----------	
email: el_co...@TOGLIQUESTOlibero.it
icq: 132581870
-----------

 Confermo
Sorry.
Mi è scappato.
W il Cut&Paste :-)
--
Gerolamo

 preso in mano un libro di C++ finendolo.
 
che libro hai letto? Dalle domande che poni sembra che tu abbia un po' di 
confusione in testa; forse il tutorial di Paolo Marotta "C++ una 
panoramica sul linguaggio" (disponibile a partire dal 
cpp.programmazione.it
) potrebbe chiarirti le idee.
Gia` che ci sei ti consiglio di leggerti anche le FAQ di questo 
newsgroup, anch'esse disponibili su Programmazione.it
ciao Anto
-- 
"Computer science is not about computers any more than astronomy
is about telescopes." -- EW Dijkstra
Newsgroup: it.comp.lang.c++
Titolo: Aiuto Urgente!!!!

Scusate l'ignoranza ma non ho la più pallida idea di come dover usare un VXD.
Paolo
--
Posted from [195.223.129.35]
via Mailgate.ORG Server - 
http://www.mailgate.org

Scusate per la domanda precedente !! Ho visto come si fa!!


Ho scaricato da MapMemPlus un filetto mmp.exe che dovrebbe (immagino)
essere un eseguibile autoscompattante. Non riesco (scusate l'espessione) a
cavare un ragno dal buco!!!
Paolo.

Newsgroup: it.comp.lang.c++
Titolo: dubbio su puntatore a matrice 3 dimensioni

Salve a tutti!
Mi e' sorto un piccolo dubbio su una demo che sto facendo.
E' un programmino che genera alcune texture dinamicamente usando il 
perlin noise...ma il problema non e' questo.
Ho una matrice tridimensionale nella quale tengo i pixel della texture.
Poi ho questa funzione, che dovrebbe restituire il puntatore matrice:
GLubyte* perlin_tex::get_texture()
{
	return &texture[0][0][0];
}
La matrice chiamata 'texture' dovrebbe essere usata nella funzione che 
ne fa uso in questo modo:
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 64, 64, 0, GL_RGBA, 
GL_UNSIGNED_BYTE, tex0->get_texture());
                   ^^^^^^^^^^^^^^^^^^^
dove tex0 e' un'istanza della class che rappresenta la texture generata.
La domanda e': e' corretto il metodo che restituisce il puntatore? Il 
programma compila, ma c'e' qualcosa che mi puzza...
shinya.
-- 
"The Prince alone sees the whole. And the whole is nothing. Completely 
in ruins. What they build and what they will build, what they do and 
what they will do, is delusion and lies. Under construction, everything 
is only half complete. In ruins, all is complete." - Werckmeister Harmonies

 programma compila, ma c'e' qualcosa che mi puzza...
Se tex0 è un puntatore alla classe allora dovrebbe essere corretto.
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg
The EMG Music page:         
http://www.emagsoftware.it/emgmusic
 

 
Si tex0 e' un puntatore alla classe.
Quindi e' corretto ritornare &texture[0][0][0]?
grazie!


 Quindi e' corretto ritornare &texture[0][0][0]?
texture č un array a tre dimensioni? Se sě, allora dovrebbe essere corretto.
EMG
--


 -- 
compila perché si aspetta semplicemente un puntatore ed č quello che 
restituisce la funzione get_texture().
Perņ il buffer passato viene usato dalla glTexImage2D() come 
R1,G1,B1,A1,R2,G2,B2,A2,...,Rn,Gn,Bn,An e non come l'hai organizzato tu e 
cioč [R][G][B] -> [R1][G1],B1,B2,...,Bn - [R1][G2],B1,B2,...,Bn che č la 
disposizione in memoria della tua matrice. Non uso le GL e quindi non so se 
devi/puoi manipolare direttamente la texture o se semplicemente devi 
passarle ad altre funzioni. Nel caso di solo passaggio l'unica accortezza č 
che il buffer sia sufficientemente grande da contenere tutti i dati e puoi 
ignorarne la forma (matrice3d vs. vettore).

Newsgroup: it.comp.lang.c++
Titolo: Gestione dello stream di ingresso

salve a tutti,
il problema č semplice ma partirň dall'esempio: in un programma cripta
le password mi serve sapere come poter far scrivere all'utente SOLO un
n numero di caratteri; cioč:
cin>>string
l'utente digita abcdefgh e poi lo stream si chiude automaticamente
senza premere invio; č possibile?
grazie per la risposta
Piermarco

...

Non in C++ standard. Ti conviene rivolgerti ad un newsgroup specifico
per l'ambiente in cui lavori.
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: borland o microsoft?

sono alle prime arimi con il C++. alcuni mi consigliano il Borland ,
altri il Microsoft. Voi che compilatore mi consigliate? e.......perchč?
grazie

gcc.  perche' e' il migliore, perche' non costa niente, perche' si
comporta identicamente su qualsiasi piattaforma venga usato.
-- 
Maurizio Loreti                      
http://wwwcdf.pd.infn.it/~loreti/mlo.html
Un. of Padova, Dept. of Physics - Padova, Italy          
lor...@padova.infn.it

altri il Microsoft. Voi che compilatore mi consigliate? e.......perchč?
Io ti consiglio il gcc, perche' costa zero lire (scaricandolo dalla
rete, o prendendolo da un CDROM delle varie riviste tipo
IoProgrammo) e ti permettera' intanto di imparare il linguaggio,
gratis, per poi decidere se e quando spendere le cifre non
irrilevanti che puo` costare un programma professionale.
Su DOS, mi dicono bene dell'implementazione DJGPP del gcc;
su Windows, Gnuwin32 (grosso e ricco) o mingw32 (piccolo e
snello) sono due ottimi pacchetti che includono gcc.  Su Linux
(sarebbe la cosa migliore, ma dovresti dedicare una partizione
di qualche centinaia di mega...) gcc e' parte integrante del
sistema (sistema operativo totalmente gratuito, come pure tutte
le sue utility).
Quando un po' di cultura te la sei fatta (e magari intanto Microsoft
da un lato, Borland/Inprise dall'altro, sono usciti con release ancor
piu` rutilanti dei loro pur ottimi prodotti) sarai molto meglio in grado
di valutare -- C++ Builder e' piu` rapido da usare per la scrittura di
interfacce grafiche, Visual C++ piu` diffuso e piu` tipicamente un
punto specifico di competenza richiesto da potenziali datori di
lavoro -- sono entrambi ottimi compilatori (e lo stesso vale per i
tanti strumenti che accompagnano i compilatori stessi, anche per
giustificare i costi, che, a parte eventuali e grossi sconti che si
fanno agli studenti, in assoluto sono da "pelare"..."-).
Alex
Newsgroup: it.comp.lang.c++
Titolo: Chiamare un metodo tramite puntatore... come?

Qualcuno di voi sa come si fa in C++ a fare una chiamata
tramite puntatore ad un metodo di una classe?
Allego un programmetto in cui la prima parte fa una prova di
chiamate tramite puntatori senza l'uso delle classi, mentre la
seconda parte dovrebbe farlo dentro una classe, ma non so
come si fa e ovviamente mi segnala errori di compilazione.
Il mio problema e` che questo tipo di chiamate non e` ben
documentato sui manuali, e quindi non ne conosco la sintassi.
Chi mi puo` dare una mano?
Ciao, grazie, Enzo.

 tramite puntatore ad un metodo di una classe?
Ottenere l'indirizzo (anche solo virtuale) di un metodo di classe non è
possibile. Si può solo ottenere un offset di questo rispetto al riferimento
della classe, pertanto per chiamare tale metodo conoscendone l'offset, è
necessario utilizzare un tipo di puntatore chiamato <puntatore a membro>, con
la relativa sintassi. Il tutto viene di seguito illustrato mediante un
semplice esempio:
class A {
    ...
    public:
        int fun(int a);
    }; //class A
void main() {
    int (A::*pFun)(int); //dichiarazione puntatore a membro
    //due istanze di esempio:
    A a;
    A* pA = new A(...);
    pFun = &A::fun ; //offset
    (a.*pFun)(2);    //chiamata utilizzando direttamente l'istanza
    (pA->*pFun)(5); //chiamata utilizzando puntatore ad istanza
    delete pA;
    }
Notare l'uso degli operatori specifici dei puntatori a membro .* e ->*
Queste forme, in alcuni casi complessi (presenza di template), hanno mandato
in crisi il mio VC++ 5, il quale, in modo piacevole e dopo aver macinato le
ore, se ne è tranquillamente uscito con un fiero "INTERNAL COMPILER ERROR",
forse perché si è tentato di fargli fare qualcosa di troppo standard!
Roberto Cavada

 forse perché si è tentato di fargli fare qualcosa di troppo standard!
O forse perché hai scritto "void main()". :-)))
EMG

 elemento sintattico. O sbaglio?
Sì, sbagli. Quanto faccio è assolutamente standard, anche se forse poco
conosciuto. Inoltre non sto prendendo un indirizzo di classe, bensì lo
pseudo-indirizzo di un metodo di classe, che come si sa sono allocati in un area
comune a tutte le istanze.
Riferimenti:
- "C++ The Complete Reference, Second Edition" di Herbert Schildt - McGraw-Hill
        cap. 13, par. 13.6
- "Thinking in C++ 2nd edition (tica 18)" di Bruce Eckel - cap. 9, par. "Pointers
to Members"
Saluti.
Roberto Cavada

 to Members"
Ho consultato. Hai ragione tu.
EMG

 Evitare... :-)))
In parte sono daccordo... ma il primo amore non si scorda mai: ho cominciato con
quello... ;-)
Ciao.
Roberto Cavada

Newsgroup: it.comp.lang.c++
Titolo: A proposito di li libri su MFC

Voglio approfondire il discorso Visual C++ MFC, ho acuisito una certa
padronanza del framework e ora vorrei andare più a fondo.
Per questo ho cercato un paio di libri e su amazon ne ho trovati 2
interessanti. Mi sapete dire qualcosa di più su quuesti due libri? Non
saprei quale scegliere.
Si tratta di
MFC Internals di Scott Wingo
e di
MFC Black Book
Grazie.

 Grazie.
Buon anno
Newsgroup: it.comp.lang.c++
Titolo: Formula di Crank Nicolson per l'approssimazione della soluzione di un problema differenziale

Ho un problema con un algoritmo che usa delle formule di
approssimazione(Crank Nicolson ed Eulero Esplicito) per problemi
differenziali del I ordine... Se c'č qualcuno che sa di cosa sto
parlando mi risponda per favore... Mi serve un aiuto urgente per
trovare un errore che cerco da giorni e giorni!!!
Grazie

 Grazie
Ho fatto quel genere di cose in matlab ma se mi contatti in privato possiamo
farci 4 chiacchere
Ciao ciao
Antonio
Newsgroup: it.comp.lang.c++
Titolo: > help sul Desktop <

Ciao a tutti :-)
Ho un'applicazione che, dovendo necessariamente essere 800x600, dovrà quindi
chiudere tutte le barre strumenti dello schermo (incluse, ad esempio, quelle
di W95 e Office), oppure "nascondere" il desktop (come fa lo splash screen
della Compton's Encyclopedia 1996 per W3.1) e riabilitarlo all'uscita,
altrimenti nella maggior parte degli schermi non si vedrà tutta la finestra
(mi spiace per chi avrà il 640x480, ma solitamente si usa solo per avere il
TrueColor che non serve ad un programma di automazione radio...).
La DOMANDA è: perché il seguente codice (inserito in
CRadiomaticApp::InitInstance()) non mi nasconde il Desktop?
BOOL res=::ShowWindow(::GetDesktopWindow(),SW_HIDE);
Grazie - ciao :-)
Marco Zanon (
m.z...@usa.net
)
http://www.geocities.com/SiliconValley/Peaks/6455
(BUY CDS AT THE LOWEST PRICES through my site!!!
Zamorano fan page, free MIDI mailing list, Music db...)

Grazie - ciao :-)
Non devi nascondere il desktop ma usare il KIOSK mode,
cioe' settarla tipo screen saver. Se trovo info piu'
specifiche le postero' in newsgroup.
Bye, Dome
http://members.it.tripod.de/beelsoft/
Newsgroup: it.comp.lang.c++
Titolo: cin e stringhe "in sequenza"

Salve a tutti,
so che cin legge tutti i caratteri immessi, fino allo spazio bianco; se
provo alla prima istanza di cin, a digitare alcune parole separate da
uno spazio, ad ogni istanza di cin le parole immesse vengono come
"memorizzate in sequenza". Faccio vedere il listato di esempio:
============================================================================
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
int main()
{
   cout << "inserire stringa di tre parole separate :\t"; cin >>
stringa;
   cout << "\nla stringa e' ora: "
        << stringa << "\n";
   cin >> stringa;
   cout << "\nla stringa e' ora: "
        << stringa << "\n";
   cin >> stringa;
   cout << "\nla stringa e' ora: "
        << stringa << "\n";
   cout << endl;
   system("PAUSE");
   return 0;
}
============================================================================
mi potreste spiegare il perché? Mille grazie.

 uno spazio, ad ogni istanza
Visto che parli di "istanze", forse (azzardo un'ipotesi) la tua perplessità 
deriva da un'errata comprensione di che cosa sia 'cin'.
'cin' è una variabile globale, che denota perciò un oggetto con lifetime 
statico. Non ci sono varie istanze, ce n'è una sola.
Scrivere
   cin >> a >> b ;
è perfettamente equivalente a scrivere
   cin >> a;
   cin >> b;
La prima scrittura è possibile in quanto operator>> restituisce un 
riferimento a 'cin', a cui può essere nuovamente applicato operator>>.
Max

>deriva da un'errata comprensione di che cosa sia 'cin'.
It's a possibility... :))
Comunque sia, non mi è chiaro il meccanismo per cui digitando tre
parole di seguito, cin riesce "a memorizzarle" (scusa il mio gergo per
nulla competente...).
Grazie per la risposta.

 nulla competente...).
Suppongo utilizzi parte della ram!
cin opera in streaming:
|----------------------------------|
    ^read_ptr     ^write_ptr
Concettualmente, le informazioni vengono scritte tramite write_ptr e 
lette tramite read_ptr. Se non le leggi di volta in volta, read_ptr 
resterà indietro rispetto a write_ptr:
|--abaco-----acacia---------------|
    ^read_ptr         ^write_ptr
Il flusso è vuoto quando read_ptr = write_ptr.
Ancora non ho studiato le std quindi non conosco i dettagli, ma verrà 
probabilmente usato un buffer circolare, cioè si avrà:
|ta-------------acacia-----richies|
    ^write_ptr   ^read_ptr
Comunque questi sono dettagli implementativi che puoi probabilmente 
ignorare.
Kiuhnm
P.S. L'input da tastiera è lento, ma ricorda che l'input potrebbe anche 
provenire da un file usando l'operatore < di DOS.

Ti ringrazio per l'esauriente risposta!
Newsgroup: it.comp.lang.c++
Titolo: cin.ignore

i got an assignment back and it was all right, but the teacher circle one
thing
    cin.ignore(60, '\n');    <------Why 60 "that is the teacher"
And im thinking "because 60 worked for me", and "25 worked for me friend"
The code above comes from this
    /*database is a structure and cash is one of the items inside the
structure
    /*and its in a do while statment ArrayCount increments everytime the
loop
    /*repeats itself
    cout << "Input Cash: ";
    cin >> (database + ArrayCount)-> cash;
    cin.ignore(60, '\n');
    cout << "Input Name: ";
i use cin.ignore() to get ignore the "line feed" from cin >> (database +
ArrayCount)-> cash
so can anybody explain WHY 60, is there a fixed expression or something that
im missing?  I clueless.
Thank you.....I hope i supplied enough code for someone to figure this out

     cin.ignore(60, '\n');    <------Why 60 "that is the teacher"
This should be ignore at most 60 characters or till a '\n' has been
read. The correct value depends on how many characters must be ignored
in your input stream.
EMG

 im missing?  I clueless.
Well, why did not Read The F*&$^% Manuals?  And asked the net?  The
answer is e.g. in Stroustrup pag. 619; the first parameter to ignore()
is the number of characters to read from the stream, until that number
or a character equal to the second argument.  The first defaults to 1,
the second to EOF; if you don't know the stream, you may prefer
looping with get() until '\n' or EOF.
Consider also writing std::cin ...
-- 
Maurizio Loreti                      
http://wwwcdf.pd.infn.it/~loreti/mlo.html
Un. of Padova, Dept. of Physics - Padova, Italy          
lor...@padova.infn.it

Newsgroup: it.comp.lang.c++
Titolo: AIUTO: come faccio a far partire un altro programma?

problema:
ho un programma che deve lanciarne un'altro.
entrambi sono scritti con Borland C++ Builder
come si fa?
devo usare le istruzione spawn o ci sono altri modi?
grazie
ciao

 wrote in message
6gsXOH=kbcOyEQaud...@4ax.com...


> Il modo più semplice è usare la funzione WinExec
pero' il modo piu' corretto e' usare l'API ShellExecute ;-)
Ciao Davide

Newsgroup: it.comp.lang.c++
Titolo: TAPI .. qualcuno le sa usare?

Qualcuno mi puņ aiutare ad usare le TAPI con il BUILDER C++?

Qualcuno mi puņ aiutare ad usare le TAPI con il BUILDER C++?
jmp it.comp.programmare.win32
-- 
 (o-  | Un OS per domarli, Un OS per trovarli,
 //\  | Un OS per ghermirli e nel buio incatenarli
 V_/_ | Nella terra di Redmond, ove l'ombra cupa scende...
http://pinguin.linuxave.net
            r punto salmaso at inwind punto it
Newsgroup: it.comp.lang.c++
Titolo: CHI COMPILA QUESTO E' DAVVERO FORTE - brkill.c (0/1)

Salve,
Ho chiesto in giro ma chi per una libreria, chi per un'altra non sono
riuscito a compilare questo piccolo programma; Vorrei compilarlo
per windows95
Se ce la fai se davvero grande!
..e nel desiderato caso, mandamelo a 
innov...@altavista.net
fammi sapere

 wrote in message
3712523c...@news.iol.it...


...


 Allora non hai capito che la cosa difficile è proprio questa!
Eh, già!
Ho provato a fare un file prova.cpp completamente vuoto e a compilarlo
(tanto per curiosità!) col BCC32, ossia C++ Builder 3.
Bene, lo compila magnificamente, ma al momento di linkare dà il seguente
errore:
Unresolved external "_main" referenced from........
(ovviamente perché manca una main() )
Che roba! Una prova stupida di compilare un file vuoto mi ha fatto fare un
passo avanti nella risoluzione di un dilemma che mi assilla da tempo!
Cfr. "Come compilare in C per Windows con BCB3?" in it.comp.lang.c
TobiX

Newsgroup: it.comp.lang.c++
Titolo: makefile

questo e' il mio makefile...
prog.exe  : Main.o Data.o
                 g++ -o prog.exe Main.o Data.o
Main.o:     Main.cpp Data.h
                g++ Main.cpp -c -o Main.o -g
Data.o:     Data.cpp Data.h
                g++ Data.cpp -c -o Data.o -g
ma mi da' quest'errore:
"gcc     Makefile.c   -o Makefile
Makefile.c:2: parse error before '.' token
make: *** [Makefile] Error 1"
avete idee???
grazie mille
"

Scusa, a parte che siamo un po' OT, ma non mi è chiaro come usi questo 
makefile. Lo richiami con gcc? Il Makefile non è un file C ma un file 
che viene processato con il comando make [target] (vedi man per 
chiarimenti ulteriori). In sostanza non devi compilare Makefile.c per 
ottenere Makefile ma semplicemente salvare quello che hai postato con il 
nome Makefile e lanciare make nella stessa dir.
Ciao
Giovanni


ok...grazie mille...ho capito...
ho fatto quello che mi hai detto...superato QUEL errore...
ma adesso mi dice:
"Makefile:3: *** missing separator (did you mean TAB instead of 8 spaces?).
Stop."
cioe'???
grazie


cioč devi usare i tab e non gli spazi:
prog.exe  : Main.o Data.o
<TAB_QUI>g++ -o prog.exe Main.o Data.o
-- 
sbi

grazie mille...
dove posso trovare i tab da utilizzare...
scusatemi ma sono proprio alle primissime armi...nn ne so nulla

 scusatemi ma sono proprio alle primissime armi...nn ne so nulla
-- 
sbi

ah....
adesso vado nell'angolino per mozz'ora
grazie mille...ringrazia anche la mia idiozia

Newsgroup: it.comp.lang.c++
Titolo: WNDCLASSex;

La mia domanda e' molto semplice,
perche' il mio compilatore (Borland c++ 4.5) mi dice che
 WNDCLASSex  non e' definito?
(windows.h e' inclusa)

 wrote in message
898m3i$6k3$1...@lacerta.tiscalinet.it...

Perche' il compilatore Borland c++ 4.5 e' aggiornato a Win32, ma non
supporta ancora le estensioni alla GUI introdotte (dopo l'uscita di BC45) in
Windows 95 ed NT 4.0, tra le quali anche WNDCLASSEX.
In pratica permette di realizzare applicazioni a 32 bit, ma con la GUI di
aspetto simile solo a Win 3.1.
Newsgroup: it.comp.lang.c++
Titolo: Libreria MFC

Chi sa dove poter reperire un database completo della libreria MFC.
mi accontento anche di un testo scritto
grazie comunque
Carmelo

mi accontento anche di un testo scritto
cosa intendi per *database* ??
Gianpaolo Bottin
- Live Long and Prosper -

mi accontento anche di un testo scritto
Programmare Windows 95 con MFC, Jeff Prosise, Microsoft Press. 120.000
lire per due volumi di circa 900 pagine. Fatto molto bene.
Altrimenti l'help in linea di Visual C++, ma a me fa schifo.
Cordialmente,
Gianni Rondinini, programmer and designer at Pierre s.n.c.
e-mail: mailto:
pie...@mail.asianet.it
homepage: 
http://www.geocities.com/Eureka/Plaza/7153
Red Hat Linux user since 9/25/97
Windows NT Server user since 9/19/97
e-mail: mailto:
pie...@mail.asianet.it

Newsgroup: it.comp.lang.c++
Titolo: Creare un file ASCII

Ciao,
Devo fare un algoritmo che restituisca un'immensa quantità di dati che mi
piacerebbe tanto riporre in un file, quindi dovrei sapere il modo per creare
questo file e metterci tali valori; potreste spiegarmi come farlo?
Grazie!
vvega

 questo file e metterci tali valori; potreste spiegarmi come farlo?
Devi usare ofstream , hai un libro o una guida al C++, ci sono un sacco di
esempi anche in rete.
E' facile!

 ha scritto nel messaggio
news:m1pje.922005$b5.40...@news3.tin.it...


Newsgroup: it.comp.lang.c++
Titolo: Stampare da dialog box

Come si puo', con il VC++5.0,  attivare la funzione di stampa da una
routine all'interno di una classe di tipo CDialog, tenendo presente
che tutte le routines di stampa(OnPrint, OnBeginPrinting, ecc...) sono
in una classe di tipo CView ??
					Ciao  Marco

mani...@iol.it
 wrote:

Uno degli strumenti piu' potenti del C sono i puntatori, Definisci quindi
all'interno della classe del dialogo un puntatore di tipo CView *p ecc,
dopo prima di chiamare il dialogo con la DoModal() assegni a p l'oggetto
della CView, poi all'interno del dialogo puoi richiamare le funzioni con
p->OnPrint (); e cosě via.




Forse mi sto perdendo in un bicchiere d'acqua, ma come si fa ad
assegnare al puntatore p l'oggetto della CView ???
                     Ciao.    Marco

Newsgroup: it.comp.lang.c++
Titolo: Lcc-win32 oppure Dev-c++?

Ciao a tutti sono nuovo del posto ^^
Come vedete l'oggetto parla da solo... che me dite?
Lcc-W32 oppure Dev-c++?
Sostanziali differenze?
Grazie per l'aiuto...
REC

 Sostanziali differenze?
Il primo e` un compilatore/editor solo per C
il secondo ha anche il compilatore C++...
-- 
Lawrence "Rhymes" Oluyede
http://loluyede.blogspot.com
Newsgroup: it.comp.lang.c++
Titolo: Facciamo un pò d'ordine...(su header e file di progetto...)

come bisogna organizzare un programma perchè sia comprensibile, funzionale e
pratico da gestire? ovvero, come devo usare file include ed altre cose del
genere per non dover mettere le mie funzioni e le mie classi in un unico
grosso e scomodo file? la mia idea è questa:
file_principale.cpp
    main()
header
    le mie funzioni, classi ecc ecc
il dubbio è come preparare gli header in questione. Devo semplicemente fare
come se scrivessi le funzioni nel sorgente file_principale.cpp, ovvero
mettere gli include, dichiarare le funzioni e poi scriverle? o c'è qualche
altra cosa che devo sapere?
se qualcuno mi illumina sulla questione, che sul (poco) materiale di
riferimento che ho non ho trovato nulla di chiaro....
Raffaele

grosso e scomodo file?
main.h //o altro nome
	i vari #include
	le dichiarazioni di funzioni
	eventuali strutture o classi (che preň dovresti evitare che
siano incluse piů volte usando #ifndef)
	altre cose piů avanzate...
main.cpp
	#include "main.h"
	#include "funzione.h"
	corpo funzioni
funzione.h
	come per main.h
funzione.cpp
	#include "funzione.h"
	ecc...
Bada a non scrivere niente del genere: "#include "nomefile.cpp"
perchč devi semplicemente includere i file.h. Questo č il principale
problema che ho trovato io nel dividere i miei progetti tra piů file,
e che nei libri sottointendono sempre.
Se hai bisogno di qualcosa di piů avanzato, scrivimi pure per email,
sempre che riesca a risponderti :-)

 grosso e scomodo file?
Considera che un programma C++ e' costituito da un insieme di "unita' di 
traduzione", che corrispondono ai file .cpp . Ogni unita' di traduzione 
dovrebbe contenere l'implementazione di un "lotto" coerente e completo 
di funzionalita', ad esempio una classe o un insieme di classi 
strettamente legate tra loro.
I file header hanno quindi due scopi: in primo luogo, servono per 
mettere a disposizione le funzionalita' contenute in ciascuna unita' di 
traduzione in modo che possano essere utilizzate nelle altre UdT; 
inoltre servono anche da permettere al compilatore di verificare la 
correttezza tra UdT diverse. Per gestire le cose in modo ordinato quindi 
avrai un file header per ciascuna UdT, nel quale metterai le 
dichiarazioni/definizioni "pubbliche" della tua UdT.
Avrai infine un'UdT particolare, senza file header associato, che 
conterra' la funzione main.
Ciao,
Nicola