mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: Info Fast Fourier Trasform

Salve
Scusate per l'off-topic... 
Pur sapendo cos'è la Trasformata e Serie di Fourier 
(le mie conoscenze derivano principalmente da 
Analisi III, e T.Segnali), non sono riuscito a trovare
informazioni su l'algoritmo FFT (Fast Fourier Trasform).
Mi piacerebbe sapere come funziona, e magari se
possibile, vorrei anche qualche implementazione in C/C++.
Mi basta anche qualche buon link...
Grazie...
Pippo
--
Automatic posted from 
mail8.geocities.com
 [209.1.224.42]
via Mailgate Server - 
http://www.mailgate.org

...
Salve
Scusate per l'off-topic... 



Grazie...
Pippo

----------
C'è un ottimo sito, con tanto di esempi, che usa la FFT e presenta un sacco
di cose utili come la classe numeri complessi...

...
Salve
Scusate per l'off-topic... 
Pur sapendo cos'è la Trasformata e Serie di Fourier 
(le mie conoscenze derivano principalmente da 
Analisi III, e T.Segnali), non sono riuscito a trovare
informazioni su l'algoritmo FFT (Fast Fourier Trasform).
Mi piacerebbe sapere come funziona, e magari se
possibile, vorrei anche qualche implementazione in C/C++.
Mi basta anche qualche buon link...
Grazie...
Pippo
--
Automatic posted from 
mail8.geocities.com
 [209.1.224.42]
via Mailgate Server - 
http://www.mailgate.org
----------
C'è un sito che fa proprio per te: 
www.relisoft.com
: vedrai merita !!!

Non so se questo ti puo' aiutare ma delle routine di FFT si trovano
nella Netlib: http:/
ftp.unina.it/pub/netlib
 e ti giri un po' il sito
dovresti trovare un "fftpack" e un "transform" che contengono le routine
che cerchi (in fortran e in c).
Attento che alcuni link sono errati e che ti tocchera chiamare le pagine
a mano.
Se ti interessa Netlib e una libreria di SW tutta dedicata al calcolo
numerico.
Un altro posto dove cercare e' il sito del Numerical Recipes (un libro
di calcolo numerico), non dovresti avere problemi a trovarlo con
Altavista.
Marco

 
Non so se ti basta, ma all'URL delle Numerical Recipes in C:
http://www.ulib.org/Books/Numerical_Recipes/bookcpdf.html
il capitolo 12 è dedicato alla FFT
Ciao
Paolo

...
Salve
Scusate per l'off-topic...
Pur sapendo cos'è la Trasformata e Serie di Fourier
(le mie conoscenze derivano principalmente da
Analisi III, e T.Segnali), non sono riuscito a trovare
informazioni su l'algoritmo FFT (Fast Fourier Trasform).
Mi piacerebbe sapere come funziona, e magari se
possibile, vorrei anche qualche implementazione in C/C++.
Mi basta anche qualche buon link...
Grazie...
Pippo
--
Automatic posted from 
mail8.geocities.com
 [209.1.224.42]
via Mailgate Server - 
http://www.mailgate.org
    Molto brevemente: se discretizzi la serie di Fourier, ti vengono degli
esponenziali con argomento n/2PI data la periodicità dell'exp, i coeff.
della serie si ripetono ciclicamente per cui si calcolano una volta
sola...nei dettagli esistono molte varianti, ma con questo puoi fare
qualcosa anche da solo!
Newsgroup: it.comp.lang.c++
Titolo: AIUTO

vorrei sapere che comando si usa dopo aver aperto un file per chiuderlo
                              grazie

???????????

...


 vorrei sapere che comando si usa dopo aver aperto un file per chiuderlo
Dipende come lo hai aperto. Se hai utilizzato gli streams allora:
istream unfile( "nomefile" );     // Apro il file in lettura
..
unfile.close();                   // Chiudo il file
Il close avviene anche automaticamente all'uscita dallo scope della
variabile unfile.
EMG

vorrei sapere che comando si usa dopo aver aperto un file per chiuderlo
Dipende come lo hai aperto (e sara` in ogni caso una funzione,
non un "comando", termine non standard in C++).
Se hai usato nel tuo programma l'approccio standard C++
(con gli opportuni #include, using, ecc ecc), e quindi un
oggetto di classe fstream per aprire il file (o ifstream se
solo input, o ofstream se solo output), non occorre che tu
faccia altro: al distruttore dell'oggetto stesso, il file verra`
chiuso.  Ad esempio:
    void scriviciao(const char* nomefile) {
        ofstream of(nomefile);
        of << "Ciao!\n";
    }
il file e` chiuso automaticamente quando l'oggetto of e`
distrutto (alla chiusa-graffa).  Se comunque vuoi fare
una chiusura esplicita per qualche tua ragione, userai
il metodo close sull'oggetto of, cioe`:
        of.close();
prima, naturalmente, della chiusa-graffa:-).
Se, per qualche ragione strana o particolare, hai scelto
di usare altri approcci per la gestione di file, bisognera`
vedere quale sia la funzione di chiusura corrispondente
a quella di apertura che hai usato.  Ad esempio, nella
libreria standard C (<stdio.h>) e` prevista una funzione
fopen per aprire un file, e fclose per richiuderlo; su
Unix, esiste una system call open per aprire (o anche
creat, ma normalmente basta open) e close per richiuderlo;
su Win32, CreateFile per aprire, CloseHandle per chiudere;
e via elencando, all'infinito o quasi:-).
Se non ci sono ragioni molto particolari per evitarlo,
normalmente l'approccio standard C++ e` il piu` semplice
e funzionale.
Alex

 close (per chiudere tutti i file aperti)
Guarda che questo non è il newsgroup del Visual Basic... :-)
EMG

devi usare fclose:
   sintassi 
FILE*fp;
fp=fopen(nomefile,"rb");
...
fclose(fp);
Newsgroup: it.comp.lang.c++
Titolo: E aggiungo anche questa !!! Però, per pietà, aiutatemi...

Perchè se sack_list ha lunghezza zero (mediante Inspect trovo:
@:0069F980
list_node_allocator           {     }
value_allocator                 {     }
buffer_allocator                {     }
buffer_list                    :00894F64
free_list                       :00894F84
next_avail                    :00894F94
last                              :00895374
node                            :00894F74
lenght                       0(0x00000000)
std::list<Sack_list_element>
) e chi ci capisce qualcosa fra questi geroglifici è bravo,
dicevo, perchè se la lista è (credo) vuota il codice entra dentro l'if
if(!sack_list.empty())
          {
            for(index i=sack_list.begin(); i!=sack_list.end(); i++)
           sack_list.erase(i);
            }
         }
chiaramente piantandosi nell'istruzione che dovrebbe eseguire il for?
Come mai la condizione
!sack_list.empty()
non evita l'esecuzione del contenuto di if  ????
E poi, come mai il codice dell'errore è sempre lo stesso, cioè quella
"minacciosa" serie di simboli in esadecimale:
Fault: access violation at 0x402c75: read of address 0x1180f6e8.....
:-(((((((((
P.S.
So che fra di voi ci sono delle anime pie... non immaginate quanto gradisco
una loro "presenza"...

 
Prima cosa (che da sola risolve il tuo problema): cancellare "a mano" il
contenuto di una lista non è necessario, il distuttore di std::list fa
tutto ciò che serve. Un motivo, invece, per cui un distruttore potrebbe
voler iterare sugli elementi di un container è per liberare risorse che la
sola distruzione degli elementi non libererebbe (il caso tipico è quando
si ha a che fare con container di puntatori).
Seconda cosa: il metodo erase() invalida l'iteratore passato per
argomento.  L'uso successivo dello stesso iteratore produce effetti
imprevedibili.
Max

Ciao,
grazie 1 miliardo per avermi risposto !!!!
Qullo che mi dici significa che posso fare a meno di definire quelle
operazioni che ho nel distruttore ? Cioč posso non definire il distruttore,
facendo in modo che sia il compilatore a generarmene uno ?
Grazie ancora per la risposta,
Sebastiano
Newsgroup: it.comp.lang.c++
Titolo: Problema TBC++4.52 - Target Win32

Ciao a tutti,
Sono alle prese con un problema cui forse solo un esperto di TBC++4.52 e
versioni vicine  puo' rispondere.
Come S.O. uso WinNT4.0.
Devo creare una applicazione che come requisito deve avere come Platform
Target Win32.
Mi funziona solo se quando creo l'interfaccia grafica non uso oggetti della
classe "BorDlg_Gray". Se uso quegli oggetti funziona solo se metto come
target Win3.x(16 bit) e uso librerie statiche.
Io ho creato una versione che va bene senza usare oggetti "BorDlg_Gray", ma
lo sfondo viene solo bianco, e la GUI e' molto piu' brutta.
Qualcuno mi puo' aiutare?
Ciao, Claudio.

 writes:

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: djgpp

Ho appena scaricato il djgpp dal sito
http://www-lia.deis.unibo.it/Courses/FondA-TLC/Strumenti/djgpp/djgpp.htm
 .
Però ho problemi nell'installazione :
creo la cartella DJGPP riporto in questa cartella i file zippati che ho
scaricato ma quando li apro ci sono cartelle con lo stesso nome.Quest mi
crea confusione.
Nel sito c'è una spiegazione con winzip per questa fase ma non è molto
chiara.
Vi è un sito dove scaricare il compilatore senza tutti quest problemi?

 Vi è un sito dove scaricare il compilatore senza tutti quest problemi?
http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=DJGPP&btnG=Google
+Search
--
Gerolamo

 wrote in message
lRHI9.71808$2B1.1...@twister2.libero.it...

Sono andato sul sito da te consigliatomi ma non riesco a capire essendo alle
prime armi e scarso di inglese.
Mi potresti dare un altro aiuto.
Ho il windows98.
GRAZIE

 GRAZIE
DJGPP č un compilatore per MS-DOS.
Personalmente non lo conosco, per cui non so darti altro aiuto.
L'unica cosa che so dirti č che se non necessiti espressamente
di un compilatore per MS-DOS, probabilmente č meglio che tu
ti rivolga a un compilatore per Windows come il 
Borland c++ compiler
o il
Dev C++ (che come compilatore utilizza il porting per Win
del GCC)
Con una ricerca su google puoi trovare facilmente entrambi.
-- 
Gerolamo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it
Newsgroup: it.comp.lang.c++
Titolo: Sono un bisognoso di aiuto...

Salve, vi espongo il mio problema: essendo un novizio della programmazione
(sto studiando il C++ a scuola, quindi potete capire a che punto possa
essere la mia conoscenza in materia) mi chiedevo se qualcuno potesse
consigliarmi qualche testo da acquistare per scendere un po' più a fondo nei
meandri della programmazione C.
Ho recentemente installato il Visual C++ microsoft, versione 5.0, sapete
darmi qualche dritta sulla costruzione dei programmi?
A scuola uso il Borland, per win3.11, e non sono ancora riuscito a compilare
nulla di funzionante con il Visual. Help me!

consigliarmi qualche testo da acquistare per scendere un po' piů a fondo




Newsgroup: it.comp.lang.c++
Titolo: Compilatore C++ gratuito per uso didattico?

Salve a tutti.
Vorrei informazioni riguardo l'ambiente di sviluppo da utilizzare in un
corso di C++ introduttivo.
So dell'esistenza del bcc55 distribuito gratuitamente dalla Borland,
anche se non ho capito bene fino a che punto puň essere utilizzato senza
infrangere le leggi sul copyright (ad esempio, č possibile installarlo
su tutti i PC di un'aula multimediale per farlo utilizzare ai
discenti?).
In ogni caso, come ambiente per iniziare, forse qualcosa a riga di
comando non č proprio quanto di piů friendly ci sia. Sarebbe meglio
qualcosa del tipo Turbo C++ 3.0 con il suo bell'IDE e l'help in linea...
ma quest'ultimo mi pare non sia assolutamente gratuito.
Sui vari Unix non credo sia il caso di puntare visto il livello
veramente introduttivo del corso.
Esiste qualcos'altro?
Ci sono soluzioni alternative piů convenienti?
Grazie,
Marcello.

ma quest'ultimo mi pare non sia assolutamente gratuito.
DJGPP + RHIDE credo che vada bene.
--
Andrea Laforgia (ICQ 87230455)
------------------------------ 
#exclude <windows.h>

Dev C++ 4.00
dovrebbe essere Freeware

 dovrebbe essere Freeware
E' Freeware in più è openSource (infatti è fatto in Delphi)...
--------------------------------------------------
 Just listen to teacher:
 "The only good Windows is an UnIstalled Windows"
--------------------------------------------------
 IL RAZZIATORE
 EMAIL: 
razzi...@usa.net
 WEB:   
http://www.geocities.com/il_razziatore/
 ICQ:   67552596
--------------------------------------------------

> E' Freeware in più è openSource (infatti è fatto in Delphi)...
L'ho visto. Sembra fatto davvero bene.
Ma funziona? Sembra stabile?
Grazie,
Marcello.
Newsgroup: it.comp.lang.c++
Titolo: Advice on learning C++ needed

I want to learn enough C++ to accomplish a couple of tasks.
(1) I want to be able to understand and change open source VNC apps (like
ultravnc) to suit my needs.
(2) I want to be able to write (or at least use) mirror drivers for screens
and printers (this also relates to #1).
(3) I want to be able to write kernel level code to control access to the
file system (like a DeepFreeze type app).
So, where do I start?  I want to know what would be the shortest path to
take to learn how to accomplish these tasks, without wasting a lot of time
on things that may not contribute to these goals.
Honestly, I'd rather hire someone to do these things (as I am very busy
myself).  But, I have been unable to find (on Guru or RentACoder, etc.)
learned individuals that can be counted on to deliver what they say when
they say.  So I am forced to learn C++ and code it myself.
Any help you can give will be greatly appreciated.
-- 
squishy
"If a nation expects to be ignorant and free,
   in a state of civilization, it expects what never
   was and never will be." - Thomas Jefferson
      [ See 
http://www.gotw.ca/resources/clcm.htm
 for info about ]
      [ comp.lang.c++.moderated.    First time posters: Do this! ]

 So, where do I start?
On newsgroups devoted to kernel programming.
--
Maciej Sobczak
http://www.msobczak.com/
-- 


 Any help you can give will be greatly appreciated.
You're going to need to learn more than C++.  VNC may, or may not, be
written in C++ (it may be pure C, not sure).  Same with the drivers. 
Kernal
level code is sometimes done in C, some assemebly.  It may or may not use
C++ (memory access issues).
What you'll want to do is start with #1, get the source code and look at 
it.
Try to figure out what langauge it's written in.  And then try to 
understand
it.  How well you are able to understand it depends on how well it was
written and how good your grasp of programming is.  If you haven't done any
programming before, it'll be beyond you at this point.
-- 

Newsgroup: it.comp.lang.c++
Titolo: std::queue<>

Qual'e` il nome standard della funzione membro che
restituisce il valore (o reference, ora non ricordo) in testa alla
coda?
Ho notato che nella documentazione del solito VC++
si parla di "top()", mentre poi negli header trovo
"front".
La cosa strana e` che per una std::priority_queue<>
il metodo e` proprio top().
Un'altra defezione del compilatore (che bello ogni giorno
ne scopro una nuova)?
Paolo
-------------------------------------------
  Paolo Marotta
 
http://web.tiscalinet.it/paolo_marotta/
-------------------------------------------

 il metodo e` proprio top().
L'interfaccia di priority_queue e' diversa.
	Mauro

 "front".
Dovrebbe essere front().
EMG

 il metodo e` proprio top().
std::queue<> ha front() e back(), mentre std::stack<> e
std::priority_queue<> hanno top().
Max

Negli header forniti con g++ ho trovato solo la funzione top(), e lo
stesso in quelli del c++ builder.
g++: const_reference top() const { return c.front(); }
bcb: const_reference       top   () const { return c.front(); }
2 a 1 :)
Paolo
-- 
La mia chiave pubblica per PGP e GPG la trovi qua:
http://web.tiscalinet.it/paolo_bernardi/pbkey.asc

L'interfaccia di priority_queue e' diversa.
Mi fa piacere sapere che ogni tanto VC++ fa le cose
correttamente!
Grazie mille (a tutti)!

Newsgroup: it.comp.lang.c++
Titolo: Serial communications book

Hi there,
              Does anybody know the name of a C++ book dealing
with serial communications (preferably not using MFC) ?
Thanks,
Joe



"Create Communications Program for Windows 95" Charles Mirho, Andy
Terrice, Microsoft Press
and my article Computer Programming, April 1997 :-)
Davide Quack
(Elimina THEDUCK per i reply)

Newsgroup: it.comp.lang.c++
Titolo: C++ Builder nel paese delle risoluzioni video...

Salve, draghi del Builder! :)
Ho un piccolo problemino: dopo aver sviluppato la mia bella
applicazioncina, la consegno all'amico che me la sta chiedendo da una
vita e... salta fuori che lui usa un monitor da 14' con una ris. di
640x480 mentre io ho sviluppato l'applicanzioncina pensando a una
risoluzione di 800x600 @:(
Adesso che ho finito di cospargermi il capo di cenere, sto cercando un
modo per fare in modo che il Builder "adatti" le dimensioni della
finestra della mia applicazione a qualsiasi risoluzione... |-?
Chi mi aiuta?
Tnx in advance

Innanzitutto ti consiglio di impostare le tue finestre sempre per la
risoluzione 640x480 che e' la minima che puoi trovare. Poi puoi effettuare
il resize dei componenti per adattarli alle risoluzioni maggiori:
calcola il rapporto fra la nuova e la vecchia dimensione della finestra:
rappX = nuovaX / vecchiaX;
rappY = nuovaY / vecchiaY;
imposta le coordinate Left e Top:
MioControllo->Left *= rappX;
MioControllo->Top *= rappY;
e poi le dimensioni:
MioControllo->Width *= rappX;
MioControllo->Height *= rappY;
Trovi un articolo riguardo il resize dei controlli su DEV di ottobre, curato
da Andrea Frosini (
fro...@infomedia.it
)
--
Byez.
Stefano Tempesta
temp...@tin.it
http://tempesta.freeweb.org
--------------------------------
(-: To "shut down" your system, type "WIN" :-)
(-: Windows VirusScan 1.0 - "Windows found: Remove it? (Y/N)" :-)
Newsgroup: it.comp.lang.c++
Titolo: A che serve aprire un file in modalita' binaria?

Ho fatto molte prove di lettura e scrittura su file:
A. Lettura con:
(1) l'operatore >>;
(2) la funzione membro di istream get():
    c=f.get(), f.get(c), f.get(sc, n)
    (c e' un carattere, sc e' una stringa C, n e' un intero);
(3) la funzione membro di istream getline(sc, n);
(4) la funzione getline(scpp)
    (scpp e' una stringa C++);
(5) la funzione membro di istream read((char*)&x, n);
    (x e' un oggetto, per esempio un array).
B. Scrittura con:
(1) l'operatore <<;
(2) la funzione membro di istream put(c);
(3) la funzione membro di istream write((char*)&x, n).
In tutti i casi esaminati, ho ottenuto gli stessi risultati, sia se il file
e' aperto in modalita' binaria e sia se e' aperto come file di testo.
Allora mi chiedo: Qual e' la differenza fra i due tipi di aperture?
I libri al riguardo sono molto vaghi, in nessuno ho trovato spiegata
l'esatta differenza fra i due tipi di aperture. Qualcuno di voi si e'
occupato della questione? Esiste un documento che tratta il problema in
modo esauriente?
Grazie. Cesare Padovani.
-- 
Posted from 
dsiaq1.ing.univaq.it
 [192.150.194.32] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

modo esauriente?
B. W. Kernighan, D. M. Ritchie - "Linguaggio C", pagg. 207, 230, 320.
Spero che nel tuo libro introduttivo sul C++ vorrai citare questa
differenza.
--
Andrea Laforgia (ICQ 87230455)
"A C program's trick is sometimes a C++ program's trap"
                                          [S.B.Lippman]

Newsgroup: it.comp.lang.c++
Titolo: Colore testo in CStatic

salve a tutti,
 usando VC++ 5.0 e le MFC come posso cambiare il colore del testo di
un controllo CStatic in un dialogo ?
Grazie a chiunque mi risponda.
-------------------
mimmo....@ntt.it
-------------------

un controllo CStatic in un dialogo ?
Gestisci nella tua classe derivata da CDialog il messaggio
WM_CTLCOLOR; nella risultante funzione della tua classe:
HBRUSH OnCtlColor( CDC* pDC, CWnd* pWnd, UINT nCtlColor )
dopo avere controllato con pWnd->GetDlgCtrlID() che l'ID sia
proprio quello dello specifico Static che ti interessa, chiama
pDC->SetBkColor() con la COLORREF che desideri, e torna
anche la ::CreateSolidBrush della stessa COLORREF.
Questo e` lo schema piu` semplice; come sempre, ne ne sono
naturalmente anche degli altri meno semplici.
Alex
Newsgroup: it.comp.lang.c++
Titolo: Compilatore C++

Salve,
ho notato che il djgpp 2.95 e' cosi vecchio che non ha nemmeno ios, limits,
sstream e chissa cos'altro. Cosa mi consigliate di free da scaricare da
internet per windows (98 nel mio caso)?
Grazie

 internet per windows (98 nel mio caso)?
Dev-C++

 Dev-C++
Attualmente ho il 4, l'ultimo tra i free quale'? Il compilatore che usa e'
sufficientemente aggiornato?
Ciao


scegli un po:
http://www.thefreecountry.com/compilers/cpp.shtml
ciao.


Se vuoi restare con il DJGPP perché non ti scarichi la versione
aggiornata (la 3.43) da 
www.delorie.com
? Altrimenti consulta la FAQ alla
domanda numero 3:
http://www.emagsoftware.it/faqcpp.txt
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

 ha scritto nel messaggio
news:422b32db$1...@x-privat.org...

C:\>g++ -dumpversion
3.3.1
e ho la versione dell'IDE 4.9.9.0
Ma se guardi al sito dovrebbero esserci aggiornamenti (sia per quanto
riguarda l'IDE che per il MingW32).

 aggiornata (la 3.43) da 
www.delorie.com
?
E' proprio la scelta che preferisco. Per caso sai se devo scaricare solo
alcuni file, avendo gia la 2.95?
Grazie

 aggiornata (la 3.43) da 
www.delorie.com
?
Il file sono questi:
unzip32.exe         to unzip the zip files         95 kb
v2/
copying.dj
       DJGPP Copyright info            3 kb
v2/djdev203.zip     DJGPP Basic Development Kit   1.5 mb
v2/faq230b.zip      Frequently Asked Questions    664 kb
v2/readme.1st       Installation instructions      22 kb
v2gnu/bnu215b.zip   Basic assembler, linker       3.3 mb
v2gnu/gcc343b.zip   Basic GCC compiler            3.6 mb
v2gnu/gpp343b.zip   C++ compiler                  3.8 mb
v2gnu/mak3791b.zip  Make (processes makefiles)    267 kb
Ma io prenderei solo gli ultimi 4:
Il djdev non l'ho mai capito bene cosa e'... dice che e' un kit di
sviluppo... ma non l'ho mai usato/saputo usare... sai dirmi cosa e'?
In ogni caso e' sufficiente scaricare solo gli ultimi 4 credo e scompattarli
nella stessa dir del 2.95 sovrascrivendo i vecchi files?
Ciao


Usa lo ZIP Picker e ti dice lui quali scaricare. Credo che ti convenga
pulire tutto e prendere tutti quelli aggiornati.


 nella stessa dir del 2.95 sovrascrivendo i vecchi files?
In generale non te lo consiglio. Installa tutto in una cartella nuova.


 standard.
Ma il djdev203 (quello del sito) e' uguale a quello che ho gia (nella
versione 2.95). E' li che ci sono gli include file standard? Allora non ci
saranno nemmeno quelle che mancano a me
Possibile che lo abbiano modificato e che la versione sia rimasta uguale?
Ciao

 uguale?
Non credo. Comunque, come ho già detto, ti conviene scaricare tutto e
installarlo in una cartella nuova per vedere se poi funziona. A me
funziona.


 funziona.
Ho scaricato anche il DJDEV203 nonostante fosse uguale a quello che avevo
gia. In ogni caso, sembra funzionare. Legge di Murphy applicata al contario
una volta tanto... :)
Ciao

L'ultima versione dell'IDE e' la 4.9.9.2, con la quale e' distribuito
gcc 3.4.2, ovvero una minor revision meno dell'ultima disponibile.
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: informazione registro

Salve.
Qualc'uno saprebbe dirmi quale č la chiave di registro che utilizza
l'orologio di sistema?????
Mi serve per concludere un programma!!
grazie.

 wrote in message
news:b0s9vl$v6m$1...@ventolo.computerville.it...

Temo tu sia fortemente OT qui.
Forse per registro ti riferisci a quello di windows, nel qual caso ti
consiglio di postare su it.comp.programmare.win32
Nel C++ non ci sono chiavi di registri.
Maurus

Newsgroup: it.comp.lang.c++
Titolo: Pasaggio array da ActiveX Dll in C++ a VB

Salve!
Ho il seguante problema:
 - Ho scritto una DLL ActiveX in Visual C++, che voglio poi utilizzare
in un applicativo VB.
 - Vorrei passare un vettore a piu' dimensioni dal controllo
all'applicativo, senzo doverlo ricopiare (e' grande e l'applicazione e'
time-critical)
                Quello che in  C++  farei
                int DATA[DIM_X][DIM_Y][DIM_Z] ;
                void GetData(int & DestArray){
                    DestArray = &Data[0][0][0];
                 }
        come lo faccio ?
Se qualcuno ci e' passato gli sarei grato se mi facesse sapere come.
Ciao,
        Giancarlo

time-critical)
Utilizzi SAFEARRAY di VARIANT.
Newsgroup: it.comp.lang.c++
Titolo: consiglio per applicazione wlan

Ciao a tutti,
volevo un cosiglio di orientamento. Dovrei sviluppare una semplice 
applicazione che giri su un palmare e che comunichi con il pc in wlan
e come ambiente potrei utilizzare il builderx mobile oppure cosa 
consigliate ? Tutti i consigli sono ben accetti, se qualcuno ha anche un 
indizio su quale palmare usare sarebbe il massimo.
Omega

 indizio su quale palmare usare sarebbe il massimo.
Dipende dal SO che vuoi supportare sul palmare... Windows Mobile? Linux? 
Symbian?
Ti consiglio di continuare questa discussione su un newsgroup che tratti di 
sviluppo su palmari e non di C++ standard, eventualmente fammi sapere su 
quale newsgroup (ad es. microsoft.public.pocketpc.developer)
Ciao
Andrea 

 
Ok ringrazio molto delle info anche se OT e mi sposto sul gruppo 
indicato cmq sei stato prezioso dato che sono in fase di ricerca e tutto 
mi torna utile.
Omega

Newsgroup: it.comp.lang.c++
Titolo: [ot] curiosità numeri grandi

Anzitutto buona pasqua a tutti
...
salve vorrei sapere una cosa solo a livello di curiosità :)
Come si gestiscono i numeri di grandi dimensioni ? cioè quelli che superano 
i limiti fisici della macchina
(tipo numero di mersenne etc)
e poi quali sono le tecniche per gestire le operazioni aritmetiche ti po 
addizione etc.
grazie ciao :-)

 addizione etc.
ok, per partire dai una occhiata a 
http://www.swox.com/gmp/
 , questa non e' 
OO ma dovrebbero esserci dei wrappers.
Ad ogni modo non e' difficile crearsi un qualche cosa di simile, 
specialmente se non speri di farla veloce come GMP.
Tommy

Per gli interi non mi pare una cosa complicata, soprattutto se non
cerchi prestazioni estreme. Non me ne sono mai occupato, ma se dovessi
farlo penso che partirei usando l'aritmetica in base 256 e
rappresentando i numeri come vettori di unsigned char. Almeno a livello
intuitivo le operazioni si fanno sostanzialmente come ci hanno
insegnato alle elementari per i numeri in base 10, anche se
probabilmente esistono algoritmi piu' efficaci.
Per i numeri in virgola mobile penso sia decisamente piu' complicato,
soprattutto perche' e' necessario garantire una certa precisione di
calcolo.
Ciao,
Nicola

 ha scritto nel messaggio 
news:1112170672.1...@o13g2000cwo.googlegroups.com...

Grazie :-)
Newsgroup: it.comp.lang.c++
Titolo: Collegamento con la seriale

Premesso che sono un programmatore dilettante, vorrei collegare il PC ad una
apparecchiatura tramite la porta seriale com2, inviarle un carattere e
riceverne uno in risposta. Con Win98 e VC++5 come protrei fare?
Grazie
Un saluto
Francesco

Puoi utilizzare le funzioni standard dei file (CreateFile, ReadFile, WriteFile) e in aggiunta alcune funzioni di impostazione della porta.
Un piccolo esempio:
	HFILE h;
// Apre la porta
	h = CreateFile("com2", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
	if (h == INVALID_HANDLE_VALUE)
		cout << "Errore aprendo il file.\n";
	else
	{
		DCB dcb;
// Legge lo stato della porta
		ok = GetCommState(h, &dcb);
		if (!ok)
			cout << "Errore GetCommState()\n";
		if (ok)
		{
// Imposta velocita' e altro
			dcb.BaudRate = 9600;
			dcb.ByteSize = 8;
			dcb.Parity = 0;
			dcb.StopBits = 0;
// Imposta la porta
			ok = SetCommState(h, &dcb);
			if (!ok)
				cout << "Errore SetCommState()\n";
		}
		if (ok)
		{
			COMMTIMEOUTS timeouts;
// Legge time out correnti
			ok = GetCommTimeouts(h, &timeouts);
			if (!ok)
				cout << "Errore GetCommTimeouts()\n";
			else
			{
// Imposta timeout
				timeouts.ReadIntervalTimeout = 100;                        // 100 ms tra 2 successivi caratteri
				timeouts.ReadTotalTimeoutConstant = 0;
				timeouts.ReadTotalTimeoutMultiplier = 0;
				ok = SetCommTimeouts(h, &timeouts);
				if (!ok)
					cout << "Errore in SetCommTimeouts()\n";
			}
		}
// Scrive "ciao" sulla porta
			ok = WriteFile(h, "ciao", 4, &bytes, NULL);
			if (!ok)
				cout << "Errore in scrittura.\n";
		CloseHandle(h);
	}





...

Vedi la risposta su it.comp.programmare.win32.
Ciao, Giuseppe

Newsgroup: it.comp.lang.c++
Titolo: AIUTATEMI, VI PREGO !!!!

Ciao a tutti; ho un gravissimo problema che spero proprio qualcuno mi aiuti
a risolvere: lavoro col Microsoft Visual C++ v. 6, ed in particolare con le
direct3d. Temo di avere creato confusione nell' impostazione del
compiltaore, perchè quando lancio il compile, mi viene visualizzato quetso
messaggio d' errore:
"Cannot compile the file c:\...\header.h; no compile tool is associated with
the file extension. "
Qualcuno mi può aiutare ??
Ringrazio anticipatamente chiunque mi dia una mano; Grazie Mille!!!!
                                            Ciao a tutti
Lucio

 the file extension. "
Non lanciare il compile quando il focus è su una finestra che visualizza un
header. Usa il pulsante compile (o il corrispondente comando) solo sui file
*.cpp
(mi auguro di aver azzeccato la risposta)
Saluti.
Roberto Cavada
Newsgroup: it.comp.lang.c++
Titolo: [OT] it.scienza.informatica.soft-eng che fine ha fatto?

Scusate l'OT, ma e` da tempo che non vedo nuovi messaggi nel sopracitato
NG. Sapete se e` un problema mio oppure no?
Grazie,
Paolo
P.s.
  Ovviamente per non intasare il NG potete rispondermi in e-mail
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

>NG. Sapete se e` un problema mio oppure no?
Forse hai un problema. Ci sono messaggi anche oggi (pochi come sempre).
Comunque il nome e' it.scienza.informatica.software.eng ma sono sicuro che il problema non e' questo.
Antonio
Newsgroup: it.comp.lang.c++
Titolo: FLTK GUI per Windows

Io ed un mio amico vorremmo creare un programma multipiattaforma e
avremmo deciso di utilizzare come ToolKit il FLTK
(
http://fltk.easysw.com
).
Sotto Linux (RedHAT 5.0) ho installato il .tar.gz e compilato il tutto, 
compresi gli esempi e FLUID, senza nessun problema.
Vorremmo sfruttare il toolkit utilizzando il compilatore Cygnus GCC
(g++) ma, sia con il .tar.gz di Linux sia tentando di usare la versione
dedicata a Windows, non siamo riusciti a concludere niente.
Dopo notevoli modifiche del makefile (mi riferisco alla versione per
Linux .... quella per Windows mi sembra dedicata al solo VC++) dedicati
al compilatore cygnus, sono riuscito a creare gli Object dei .cxx della
Libreria nonche' il .a di quest'ultima ma, quando si tratta di Linkare
gli object di FLUID (anch'essi compilati senza particolari problemi), mi
spara un massacro di errori relativi al fatto che NON TROVA le Funzioni
di Libreria.
Dopo una miriade di tentativi diversi ho constatato che, praticamente,
ignora il file libfltk.a; anche tentando di compilare un piccolo
programmozzo di esempio che mi sono fatto (e che sotto Linux ho
compilato al primo colpo) mi spara lo stesso errore.
****
Saremmo grati se qualcuno ci potesse fornire qualche INFO su come
utilizzare l'accoppiata FLTK+Cygnus o, eventualmente, con quale
compilatore (freeware .... VC++ non ci interessa) possiamo ottenere
qualche risultato.
Cordiali saluti, U D A.

qualche risultato.
Tanto per iniziare, avete copiato i makefiles/*.cygnus nella rootdir?
Se si, non vi so aiutare visto che non la uso (e nemmeno m4, se e' per
questo...)
--
(o-  T | If Bill Gate$ had a nickel for every time window$ crashed...
//\  U | ... oh, wait, he does...
V_/_ X | email: r.salmaso (at) 
flashnet.it
 | pinguin (at)
linuxfan.com
VDK (C++ GUI lib) 
http://www.guest.net/homepages/mmotta/VDKHome
VDKBuilder (RAD Tool) 
http://www.guest.net/homepages/mmotta/vdkbuilder

qualche risultato.
In questo fine settimana provo anch'io a compilare e poi ti faccio
sapere. Magari preparo un post per tutti colori che vogliono
usare FLTK con Mingw32 e poi lo metto qui.
Ciao!
-- 
Roberto Gerola
Email: 
robert...@penguinpowered.com
WWW: 
http://www.penguinpowered.com/~The_Cpp_Compass

 usare FLTK con Mingw32 e poi lo metto qui.
Penso sarebbe un'ottima cosa; FLTK mi sembra un po' sconosciuta come
libreria (pure sotto Linux viene nominata molto meno della GTK), eppure,
mi e' sembrata ottima (LGPL, Multipiattaforma, Editor delle GUI Visuale,
ecc....).
Grazie ancora e ciao, U D A.

ecc....).
Concordo. E poi e` molto compatta, infatti e` stata progettata
per essere linkata staticamente agli eseguibili e soprattutto e`
utilizzabile direttamente in C++, senza aggiunta di librerie wrapper
(vedi gtk++).
Finora e` la migliore tra quelle cross-platform che ho provato.
Tranne il codice prodotto da FLUID. Una vera schifezza IMHO: 
non usa l'approccio OOP, un sacco di puntatori dichiarati
con la clausola extern, ...
Ciao

Newsgroup: it.comp.lang.c++
Titolo: BORLAND vs MICROSOFT possono convivere?

Salve a tutti,
sono alle prime armi con la programmazione in C++ ma ho buone basi di Pascal
e un pizzico di Asm (che ho studiato per capirne qualcosa di più). Beh, ciò
che mi domandavo e se possano convivere sullo stesso sistema + compilatori e
prodotti.
- Ho il Borland C++ Builder 4 Pro. Come andrebbe se ora installassi il
Visual C++ 6 ?
- Ora vorrei chiedervi un suggerimento. In realta non ho ancora iniziato a
studiare il C++ perchè sto studiando il C (che molti consigliano di
apprendere prima del C++):
a)    Lascio perdere il C ed incomincio lo studio del C++ visuale
b)    Lascio perdere il C ed incomincio lo studio del C++
c)    Continuo a studiare C per poi passare al C++
- Non riesco a capire bene LE FUNZIONI. C'e' un tutorial che ne parla in
maniera molto semplice?
Ringraziando tutti voi per la disponibilita che dimostrate verso chi a tanta
voglia di imparare, vi saluto.
Ciao dal vostro nuovo amico,
          .ChillOut'2K.

maniera molto semplice?
Credo che l'unico tutorial valido sia un testo sul linguaggio.
Non credo esiste un tutorial SOLO sulle funzioni, perche' sono un
argomento molto molto semplice.
Il problema per chi apprende il C++ e' che nessun tutorial prescinde
dalle conoscenze di C. Che lo si voglia o meno, il C++ ha un sostrato
di C, per cui molta parte del linguaggio viene data per scontata.
Comunque puoi sempre chiedere nel gruppo che cosa non capisci.
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
-----------------------------------------------
Dovro' prendere lezioni di Internet, 
se non sai di Internet non ti considera nessuno 
(Carmen di Pietro) 
-----------------------------------------------

di C, per cui molta parte del linguaggio viene data per scontata.
Hai letto il tutorial di Marotta? Sinceramente non mi pare faccia
molto riferimento al C come base.
-- 
DGP85
http://daps.cjb.net/
Don't change the address.
No Binaries or HTML at this address.

Newsgroup: it.comp.lang.c++
Titolo: Classe in una Dll

ciao,
  il mio problema e':
sto facendo una semplice dll in visual c++ ed 
ho importato una classe. come mai non riesco ad usare le proprieta' della
classe nelle funzioni richiamate da altre dll?
(spero di essere stato chiaro, picchiatemi se necessario)
-- 
Posted from 
IDENT:ro...@deepspace.cline.it
 [212.39.2.130] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

...

Newsgroup: it.comp.lang.c++
Titolo: Printer Driver

Mi trovo a dover progettare e realizzare driver per stampanti per i
seguenti sistemi operativi: Win95, Win 98 e Win NT 4.0 e 5.0 .
Dove posso trovare documentazione specifica sull'argomento, esempi, patch
ed altro ancora ???
Grazie in anticipo !!!
Michele D.



In MSDN (Microsoft Developer Network) che e' un set di CD ricevibile da
MS con abbonamento c'e' il DDK (Device Driver Kit) che permette di
sviluppare driver e contiene alcuni esempi su come procedere.
massimo


...
    > Mi trovo a dover progettare e realizzare driver per stampanti per i
    > seguenti sistemi operativi: Win95, Win 98 e Win NT 4.0 e 5.0 .
 
    > Dove posso trovare documentazione specifica sull'argomento, esempi, patch
    > ed altro ancora ?
 
    Su 
www.microsoft.com
 si trova, liberamente scaricabile, almeno il
    DDK (Device Driver Kit) per Windows 98 (che, se non sbaglio,
    dovrebbe in futuro funzionare anche per WinNT 5), e, credo, anche
    quelli per Windows95 e WinNt 4.
 
 
    Alex

Newsgroup: it.comp.lang.c++
Titolo: Line Input del VB

Mi servirebbe immagazzinare in un array tutte le linee contenute in un
file di testo, ma essendo alle prime armi col C avrei bisogno di una
mano...
Credo di dover utilizzare la funzione fgets?!?
Grazie.
               --Please also reply via E-Mail--
                      4169522043485253

 file di testo, ma essendo alle prime armi col C avrei bisogno di una
#include <string>
#include <vector>
#include <iostream>
void
readLines( std::istream& in, std::vector<std::string>& array )
{
  std::string line;
  while (std::getline( std::cin, line ))
    array.push_back( line );
}
	Mauro

 	Mauro
-- 
Maurizio Loreti                      
http://wwwcdf.pd.infn.it/~loreti/mlo.html
Un. of Padova, Dept. of Physics - Padova, Italy          
lor...@padova.infn.it

     while (std::getline( in, line ))
Si, doveva essere in (altrimenti a cosa sarebbe servito?)
	Mauro

   while (std::getline( std::cin, line ))
while (std::getline( in, line ))
EMG

Newsgroup: it.comp.lang.c++
Titolo: PROBLEMA CON sndPlaySound.....

su un listato di un programma ho trovato questa funzione di libreria
funzioannte sotto dos che utilizza la scehda sonora per riprodurre
file sonori. il programma che ho avuto modo di leggere funzionava e
cosě ho deciso di provare a utilizzare questa funzione in un mio
programma. 
#inlcude <windows.h>
#include <iostream.h>
main ()
{
   sndPlaySound ("nomefile.wav", SND_SYNC);
   return 0;
}
non mi funziona... perché?
credici
cre...@infinito.it
<--------------------------------------------------->
messaggio by: credici
mailtome    : 
cre...@infinito.it
my home     : 
http://credici.supereva.it
 
visitate subito : 
http://www.city3000.it/athenet
e non ve ne pentirete mai 
<--------------------------------------------------->

credici, ci credi che su questo ng sei OT?
Dato che il tuo programma INIZIA con:
#inlcude <windows.h>
devi andare su news:it.comp.programmare.win32

Newsgroup: it.comp.lang.c++
Titolo: Inserimento OCX in una Dialog

Salve a tutti,
vorrei sapere come si può inserire un OCX ( che nel mio caso è il Viewer di
Crystal Report 8 ) in una dialog.
L'inserimento, per motivi che non sto a spiegarvi deve essere fatto via
codice, non utilizzando il Wizard di Visual C++.
Grazie.
Marco

Ciao,
Questo newsgroup si occupa del linguaggio C++ in quanto tale, e non di
aspetti specifici di particolari implementazioni. Per questo non e' il
posto piu' adatto per porre domande specifiche come la tua.
Potresti avere piu' fortuna su uno dei seguenti gruppi:
Per Win32 (95, 98, NT): it.comp.programmare.win32
Per Linux:      it.comp.os.linux.development
Per C++Builder: i gruppi borland.public.cppbuilder.*, disponibili sul
                server 
forums.borland.com
 (in inglese)
Grazie,
Nicola Musatti
Newsgroup: it.comp.lang.c++
Titolo: Visual C++

Salve a tutti... sarei interessato ad imparare a programmare nel modo
migliore possibile in visual c++; per il momento sto portando avanti il
famoso C. Petzold: Programmare Windows '95, ma sarei curioso di vedere
programmi gia' fatti e tutorials vari.
In base alla mia opinione ritengo molto meglio imparare prima  SDK e poi
MFC, al limite, se ne avro' bisogno; ebbene: non e' che sapreste indicarmi,
gentilmente, qualche sito in Internet dove possa trovare tutorial SDK ed
esempi vari?
Grazie a tutti!!!

Allora quando ti sei studiato ben benino il Petzold
sai molto bene come funziona Windows in generale
se vuoi approfondire ti consiglio di andare a guardare
direttamente il sito 
msdn.microsoft.com
,se sei a digiuno non ci capisci
niente ma se il libro lo conosci bene hai delle ottime basi.Sicuramente
e' il posto dove potrai trovare tutte le informazioni che cerchi,ma ripeto
prima studiati bene il Petzold altrimenti non capisci molto.
Ciao.

 esempi vari?
Chiedi su it.comp.programmare.win32.  Comunque, 
http://aleax.supereva.it/
Alex
Newsgroup: it.comp.lang.c++
Titolo: Problemi con l'ereditarietà da classe astratta.

Salve a tutti.
E' la prima volta che sto ereditando da una classe puramente astratta e
non ci riesco.
La classe è la seguente:
class TARObject { 
  public:
    virtual TARObjClass GetClass() const;
    virtual void ToStream(char* Buff, int &BufLen) const;
    virtual void FromStream(char* Buff, int &BufLen);
    virtual TARObject* Clone() const;
};
Da questa eredito una classe ridefinendo tutti i metodi della classe
base.
Ottengo però questo messaggio di errore all'atto del linkaggio:
ARMessages.o: In function `TARONull type_info function':
ARMessages.o(.text+0x691): undefined reference to `TARObject type_info
function'
ARMessages.o(.text+0x698): undefined reference to `TARObject type_info
node'
ARMessages.o: In function `TARObject::TARObject(void)':
ARMessages.o(.gnu.linkonce.t.__9TARObject+0x9): undefined reference to
`TARObject virtual table'
*** Error code
1                                                                         
Il messaggio scompare se nei metodi virtuali ci metto {} così da fornire
una implementazione vuota.
Cosa sto sbagliando?
Grazie.

 Grazie.
Non sono sicuro di capire i dettagli dei messaggi di errore che ricevi (sono
abituato
ad un altro compilatore), ma cosi' a occhio e croce non stai usando una
classe astratta,
ma una classe concreta.
Infatti i metodi da te dichiarati virtual nella base class non
sono poi definiti. Il compilatore considera istanziabile un oggetto di tipo
class TARObject, ma non sa come istanziarlo perche' non hai fornito una
definizione dei metodi (in particolare non sa costruire la vtable). Di qui
l'errore.
Puoi risolvere il problema dichiarando le funzioni membro della classe base
cosi':
    virtual TARObjClass GetClass() const = 0;
Il compilatore rinuncia a considerare istanziabile un oggetto di class
TARObject (il che
e' desiderabile trattandosi di un interfaccia). Mi sembra (vado a memoria)
che basti mettere il "= 0;" dopo una
qualunque delle tue funzioni membro nell'interfaccia. Io sono abituato a
metterla dopo tutte le funzioni membro che poi non definisco, segnalando
appunto che non le definisco in un qualche file .cpp e quindi suggerendo al
lettore di non andarsele a cercare.

 Cosa sto sbagliando?
Cambia la definizione della classe a quella puramente astratta
che hai intenzione di esprimere:
class TARObject
  public:
    virtual TARObjClass GetClass() const = 0;
    virtual void ToStream(char* Buff, int &BufLen) const = 0;
    virtual void FromStream(char* Buff, int &BufLen) = 0;
    virtual TARObject* Clone() const = 0;
};
Alex

     virtual TARObjClass GetClass() const = 0;
Funziona perfettamente.
Eppure credevo che non avendo mai instanziato nel mio main direttamente
un oggetto della classe astratta, il compilatore non avrebbe mai cercato
i suoi metodi.
Grazie.
Marcello.

Newsgroup: it.comp.lang.c++
Titolo: AVI Capture...

Cerco esempi,
possibilmente x C++Builder sull'uso di avicap.h
Ciao alla proxima...
BRUNO (
voy...@zuzzurello.com
)
SCAMBIO PROGETTI ELETTRONICI & SORGENTI C++BUILDER
http://www.floating.com/users/voyager/1.htm


Newsgroup: it.comp.lang.c++
Titolo: Perchè???? - (Serialize)

operand of type 'class CArchive' (or there is no acceptable conversion)
Non hai sovraccaricato l'operatore << che, giustamente, non sa come
comportarsi di fronte ad un oggetto di tipo CArchive.
~~
Roberto Colmegna
roberto...@login.it
Chi afferma che un uomo non ha certezze mente.
Ne ha infatti almeno una: l'essere stato vivo.

Naturalmente non vorrei dover scrivere su disco campo per campo!
non vedo dove sia la drammaticita' della cosa. Come alternativa puoi
fare una Write e una Read dell'intera struttura:
	if (ar.IsStoring())
	{
		ar.Write(&odc,sizeof(odc));
	}
	else
	{
		ar.Read(&odc,sizeof(odc));
	}
Tieni pero' presente che il giorno in cui aggiungerai un campo alla
struttura avrai problemi di compatibilita' con i file scritti in
precedenza.
Gianpaolo Bottin
- Live Long and Prosper -

 Ciao
If you have a fixed length aggregate one can do a following :
                friend CArchive& operator >> ( CArchive& ar, odcdata&
odc )
                {
                        ar.Read( &odc, sizeof( odcdata );
                        return ar;
                }
                friend CArchive& operator << ( CArchive& ar, const
odcdata& odc )
                {
                        arWrite( &odc, sizeof( odcdata );
                        return ar;
                }
otherwise ( your case )
        struct odcdata
        {
                CString m_Cognome;
                CString m_Nome;
                unsigned char m_NascGiorno;
                CString m_NascMese;
                unsigned int m_NascAnno;
                unsigned char m_Eta;
                ....
                friend CArchive& operator >> ( CArchive& ar, odcdata&
odc )
                {
                        return ar >> m_Cognome >> m_Nome >>...;
                }
                friend CArchive& operator << ( CArchive& ar, const
odcdata& odc )
                {
                        return ar << m_Cognome << m_Nome <<...;
                }
        } odc;
This is caused by dymamic heap allocation in CString.
Ciao, Alexei.
Newsgroup: it.comp.lang.c++
Titolo: Bypassare le inizializzazioni

Ciao.
Sto lavorando ad un mio piccolo progetto: Bioritmi 2000, che avevo
programmato prima in VB5, ma poi ho abbandonato in favore di C++.
Dopo esser riuscito a trovare il modo di visualizzare i cicli, sono andato
avanti con la preparazione.
Questo programma serve proprio a elaborare i Bioritmi, quindi devo anche far
uso del file math.h.
Dopo aver preparato la routine di calcolo dei bioritmi mi sono accorto che
avevo fatto un errore: anche se il programma dava errore per la data errata,
calcolava lo stesso i cicli. Cercando di mandarlo alla fine della procedura,
il compilatore mi dice che non può bypassare l'inizializzazione di variabili
locali.
Come devo fare?
Le variabili di cui parla sono alcune variabili che mi servono
esclusivamente per il calcolo dei bioritmi. Non ha senso inizializzarle
anche se non devo calcolare nulla.
Aiutatemi.
Diego Pettenò

I costruttori esistono apposta per evitare che vengano dimenticate delle
inizializzazioni comunque dovrebbe darti un warning più che un errore. In
ogni caso inizializzare le variabili non comporta sprechi particolari
perchè comunque devi allocarle a prescindere dal valore memorizzato.
Forse tu ti preoccupi del cosidetto overhead legato al dover scrivere nelle
variabili dei valori inutili?
Ciao, Salvo.
Diego Pettenò wrote in message ...


Aiutatemi.
Non e` buona norma bypassare l'inizializzazione delle variabili,
(la NASA ha perso un satellite per una simile dimenticanza)
in C++ poi puoi differire (quasi sempre) la dichiarazione di una 
variabile al  momento in cui devi utilizzarla per la prima volta:
for(int i ... ) {
  ...
  int Tmp = Calcolo();
  ...
}
In questo caso Tmp viene inizializzata la prima volta e poi
alle successive iterazioni non viene costruita una nuova variabile,
ma si continua a usare quella precedente.
Paolo
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

 ma si continua a usare quella precedente.
Davvero? Sei sicuro? La variabile è automatica e quindi dovrebbe essere
allocata nello stack all'atto della definizione e disallocata dallo
stesso all'uscita dal blocco... uhm... però in effetti si esce dal
blocco solo alla fine del loop. Cosa mi sfugge?
EMG

variabili dei valori inutili?
Scrivere valori inutili e` quasi come non inizializzarle...
Cmq basta ritardarne l'introduzione al momento del
primo uso e` ogni ovehead e` eliminato!


 Cosa mi sfugge?
Il blocco applicativo di un for (while o do-while)
comprende anche il for (while) stesso...
Altrimenti non potresti scrivere cose tipo
do {
...
} while (<calcolo>)  
dove calcolo coinvolge eventuali variabili locali al ciclo.
