mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: array di classi . . .

CMyclass myinst[20];
myinst[4].metodo(4321435);
myinst[19].metodo(7543232);
se conosco già quante istanze devo creare di una determinata classe non mi
basta scrivere così?
e il costruttore?
--
ciao
..::[xaero]::..

e il costruttore?
viene chiamato 20 volte il default costructor CMyclass::CMyclass() e,
ovviamente, al termine del blocco corrente, viene chiamato 20 volte il
destructor CMyclass::~CMyclass().
-- 
Posted from 
adsl-21-135.38-151.net24.it
 [151.38.135.21] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

grazie per la risposta
ho letto anche quella di Luc riguardo i vector, ma credo che userò gli array
dato che mi servono solamente 20 istanze di una classe create
all'inizializzazione della classe che li contiene, e che non verranno mai
modificate in quantità
--
ciao
..::[xaero]::..
""Andrea Ferro"" <And...@UrkaDVD.it> ha scritto nel messaggio
news:A119749FAE32F94FA6...@pdc.UrkaNet.com...


e il costruttore?
Viene chiamato il costruttore di default CMyclass::CMyclass()
Lavinia
WINWORD.EXE - ERRORE DI APPLICAZIONE
l'istruzione a "0x3017ff27"ha fatto riferimento alla
memoria a "0x02a3143c".La memoria non poteva essere 'read'.

 Viene chiamato il costruttore di default CMyclass::CMyclass()
lo immaginavo
intendevo se potevo evitare di utilizzare quello di default, ma pare di no
cmq ho risolto creando due classi derivate da quella originale, e nel
costruttore di defsault chiamavo il vero costruttore
class X {
public:
    X(int type);
    virtual ~X();
}
class A : public X {
public:
    A() {  X::X( consts::type_a ); }
    virtual ~A();
}
class B : public X {
public:
    B() { X::X( consts::type_b ); }
    virtual ~B();


vero costruttore
Purtroppo non e' una cosa che si puo' fare. Un array di "Derived"
non e' compatibile con un array di "Base" anche se un puntatore
a "Derived" puo' essere usato come puntatore a "Base".
Scrivere:
    void Fun1(Base v[])
    {
      ...
    }
    int main()
    {
      derived v[100];
      Fun1(v);
      return 0;
    }
non e' corretto (anche se il compilatore purtroppo non se ne
accorge per colpa della logica di decadimento degli array
in puntatori).
Per evitare il problema basterebbe usare std::vector che ha
praticamente la stessa efficienza degli array ma permette (fra
le altre cose) di contenere elementi che non abbiano un
costruttore di default o di inizializzare il contenuto copiando
gli elementi da un oggetto passato al costruttore del vettore.
std::vector inoltre si accorge di errori logici come quello
mostrato precedentemente durante la compilazione: infatti
std::vector<Derived> non e' convertibile in std::vector<Base>
(ed e' giusto che non lo sia).
Posso chiedere che cosa hai contro std::vector ?
HTH
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff
Newsgroup: it.comp.lang.c++
Titolo: GCC - Bitset - to_string....

 gcc -v
gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-85)
-- 
Posted from [194.214.173.28] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 esiste to_string()
Io sono riuscito a compilarlo (con gcc) specificando tutti i
parametri del template:
  std::string myString = myBitset.to_string <
      std::string::value_type,
      std::string::traits_type, 
      std::string::allocator_type > ();
Non so cosa dice lo standard in questo caso.
	Mauro

Non so cosa dice lo standard in questo caso.
Che purtroppo lo devi fare (o crei una funzione helper
template <size_t T>
void bitset_to_string(std::bitset<T>& val, std::string& str)
{
  str = val.to_string <
      std::string::value_type,
      std::string::traits_type, 
      std::string::allocator_type > ();
}
-- 
 (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...
Tessera 99ers 204           raffaele punto salmaso presso libero punto it

 Tessera 99ers 204           raffaele punto salmaso presso libero punto it
Bella la signature..... tra le altre cose questo oscuramento degli
occhi me lo hanno fatto proprio venire quelli di M$ visto che la loro
to_string non e' template e il parametro di ritorno e' una
semplice std::string!!!!!!
Ma secondo te Frodo sara' mica Linus Torvald???
se ci pensi il pinguino potrebbe sembrare un Hobbit.....


 se ci pensi il pinguino potrebbe sembrare un Hobbit.....
Linus e' un uomo del Nord, quindi e' piuttosto Aragorn.
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: Questione di prototipi

Vengo subito al sodo :
#define TEXTPROC_API __declspec(dllexport)
TEXTPROC_API int fnTextProc(LPCSTR InputFileName,LPCSTR OutputFileName,
LPCSTR Separators);
questo č il prototipo di una funzione scritta in VC6 che devo usare in VB6,
ma iddu (VB6) continua a fare i capricci č mi dice "can't find dll entry
point" o se aggiungo extern "C" al prototipo iddu dice "Bad calling
convention", il che mi fa pensare che + giusta quella di prima, ma perņ non
funge.
Qualcuno puņ aiutarmi.
PS:
Chiedo scusa all'area per le due citazioni inevitabili della parola Basic.

risolto :
int __stdcall fnTextProc(LPCSTR InputFileName,LPCSTR OutputFileName, LPCSTR
Separatori)
e nel .def :
EXPORTS
FNTEXTPROC = fnTextProc
byebyte
Newsgroup: it.comp.lang.c++
Titolo: spunto per routine sviluppo sistemi lotto/superenalotto

Salve a tutti.
Premetto che non sono un esperto .... quindi scusate le eventuali domande 
sciocche...
Vorrei realizzare un programmino senza pretesa (basilare)per lo sviluppo 
integrale di sistemi lotto o superenalotto.
Qualcuno puo' darmi uno spunto per iniziare ? Qualche linea di codice da 
ampliare ed approfondire ? Penso che tutto si dovrebbe risolvere un una 
serie di cicli for annidati ....
Grazie 


cosa vuoi fare esattamente?

> cosa vuoi fare esattamente?
Ciao e grazie per la richiesta :
vorrei per esempio, chiesto quanti numeri sviluppare e con che tipo di 
combinazioni (2,3,4,5,6 numeri)
sviluppare l'integrale.
Quindi se dico sviluppo di 4 numeri in combinazioni da tre vorrei ottenere :
123
123
234
Grazie se potrai aiutarmi.

234
123
124
234
Dovrebbe servire solo un for con qualche if.

 combinazioni (2,3,4,5,6 numeri)
Si chiamano combinazioni semplici senza ripetizioni.
http://it.wikipedia.org/wiki/Calcolo_combinatorio
Se cerchi con google trovi sicuramente molti esempi.

Guglielmo Calligaro ha scritto:

eoni fa :-) feci una classe per gestire lo sviluppo di combinazioni con 
N e K impostabili.
Trovi il codice su (toh! esiste ancora :-) )
http://digilander.libero.it/npaolini/NPS04/NPS04.html
Ciao

 ampliare ed approfondire ?
int main(int argc, char* argv[]) {
}
-- 
-riko

 serie di cicli for annidati ....
Questo programma stampa le combinazioni semplici:
#include <iostream>
#include <cmath>
bool valido (int n, int k, int i) {
     int differenza = 0;
     for (int x = 1; x < k; x++) {
         differenza = int(i / pow(n, k - x)) % n - int(i / pow(n, k - x - 
1)) % n;
         if (differenza >= 0)
            return false;
     };
     return true;
}
void genera (int S[], int n, int k) {
     for (int i = 0; i < pow(n, k); i++) {
         if (valido(n, k, i)) {
            for (int j = 1; j <= k; j++)
                std::cout << S[int(i / pow(n, k - j)) % n] << " ";
            std::cout << std::endl;
         };
     };
}
int main() {
    int S[] = {1, 2, 3, 4, 5};
    genera(S, 5, 4);
    while (std::cin.get() != '\n');
    return 0;
}
La versione completa stampa anche permutazioni e disposizioni.
Ne ho fatto anche una versione scaricabile qui: 
http://axeryon.altervista.org/CalcComb.zip
Saluti 

On 2 Ott, 22:33, "kar" <rgg...@NOSPAMyahoo.it> wrote:

Al di la del programmetto, la cosa più saggia da fare è lasciare
perdere il superenalotto! :-)))
Come tutti questi giochi, combinazioni o no, sistemi o non sistemi,
numeri "ritardatari" o quello che è... finirai SEMPRE per rimetterci
dei soldi!
(In senso probabilistico, si intende) :-)
Scusate l'OT...

 dei soldi!
A meno che tu non sia quello che vende il sistema, invece di giocarlo...
E.

 dei soldi!
Gia'. Alla fine se uno vuole giocare[0] giochi il minimo possibile. Se
ha culo ha culo. Se non ce lo ha, non ce lo ha manco giocando sistemi da
svariate decine di euro.
----
[0] il gioco e' gioco, ognuno si diverte come vuole. c'e' chi si diverte
ad azzeccare numeri, certo, mi vengono in mente passatempi che reputo
piu' divertenti.
-- 
-riko
Newsgroup: it.comp.lang.c++
Titolo: Dove è possibile reperire librerie per il  C++

Ciao 
volevo chiedervi se c'era un sito dove era possibile reperire librerie per
il c++(a me interessa soprattutto la libreria graphics.h)
Ciao e grazie a tutti Neo
-- 
Posted from 
IDENT:pos...@mail.ctonet.it
 [212.110.160.100] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Ciao e grazie a tutti Neo
Per quale piattaforma? In ogni caso usa OpenGL ( che non e'
una "libreria") che e' anche multipiattaforma per Linux esiste
la Mesa che e' compatibile con OpenGL.
-- 
Posted from [194.214.173.28] 


 wrote in message
3.0.6.32.2001073...@pop.libero.it...


Newsgroup: it.comp.lang.c++
Titolo: interprete di script

Qualcuno saprebbe darmi un suggerimento su come fare un interprete di un
linguaggio di script che devo definire?
Grazie

...


 wrote in message
7u05ms$dge$1...@draco.tiscalinet.it...


 azioni che ho già implementato.
lex & yacc ?  "lex" e' un lexical analyzer dell'input, e "yacc" un
parser che associa, a keywords seguite da predicati, azioni da
compiere (:== procedure da richiamare).  Di uso comune nel mondo Unix;
le versioni FSF si chiamano flex e bison.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

azioni che ho già implementato.


Prova qui: 
http://www.bloodshed.nu/
Inoltre puoi anche provare il parser del gnuplot scegliendo da qui:
http://www.cs.dartmouth.edu/gnuplot_info.html


Newsgroup: it.comp.lang.c++
Titolo: const char*

Sto utilizzando una libreria, in cui una funzione ha il seguente prototipo:
funz(const char *testo);
Un utilizzo semplice sarebbe:
funz("ciao");
Ma io vorrei poter inserire variabili. Avevo pensato di fare una cosa
simile:
char stringa[100];
fprintf(stringa, "Ho %d anni\n", mieiAnni);
funz(stringa);
ma da un errore nel tipo passato. Cosa posso fare?

 wrote

E quale sarebbe l'errore???
Tommaso

 fprintf(stringa, "Ho %d anni\n", mieiAnni);
se e' da quest'ultima allora evidentemente stai sbagliando funzione 
(fprintf -> sprintf).
Se invece deriva da funz() devi darmi maggiori dettagli...
Ad ogni modo questa sembra piu' una domanda C che C++....
Tommaso

 ha scritto nel messaggio
news:r4r8e.789990$b5.35...@news3.tin.it...


 ha scritto nel messaggio
news:d3tggo$7kl$1...@hercules.btinternet.com...

Ho sbagliato a scrivere sul newsgroup. Mi riferivo ovviamente a sprintf e
non a fprintf.
L'errore deriva da funz(stringa), dopo che stringa č stata modificata da
sprintf.
Visto che funz accetta solo const char*, non si potrebbe fare una specie di
casting da "char*" a "const char*"? Che mi suggerite?
Kaos.

 ha scritto nel messaggio
news:r4r8e.789990$b5.35...@news3.tin.it...


casting da "char*" a "const char*"? Che mi suggerite?
Niente. Una funzione con parametro const char* accetta argumenti const
char* ed argumenti char*.
Una funzione con parametro char* non accetta argumenti const char*.
-- 
Horst

 di casting da "char*" a "const char*"? Che mi suggerite?
La conversione da 'T*' a 'const T*' avviene implicitamente.
Non serve alcun cast.
Max
Newsgroup: it.comp.lang.c++
Titolo: [OT] source navigator e cygnus

Ciao a tutti,
scusatemi l'OT, ma penso che possa interessare ai molti
interessati ai prodotti gpl.
Stavo cercando di utilizzare Source Navigator, con il c++ della cygnus
 ormai Red Hat)
ma non riesco a fargli vedere il make.
Ho provato tutte le impostazioni possibili,
ma SN cerca sempre di utilizzare il make del CBuilder.
In effetti penso che il vero problema sta nel fatto che non so come
impostare
le variabili d'ambiente in win2000.
Cualcuno sa come fare?
Grazie
Alessandro.
Per chi non lo conoscesse
Source Navigator č utilissimo sia come ambiente di sviluppo,
che ( e soprattutto ) per studiarsi progetti, anche complessi, sviluppati da
altri.
Si trova quě: 
sources.redhat.com

 le variabili d'ambiente in win2000.
<> Cualcuno sa come fare?
Menu Start
    -> Settings
                -> Control Panel
                        ->System
Vai su Advanced e clicca su Environment Variables.
Newsgroup: it.comp.lang.c++
Titolo: Consiglio testo

Ciao a tutti,
programmo da tempo in C++ e ho iniziato ad avvicinarmi a questo
linguaggio come autodidatta.
Uno dei testi che ho usato maggiormente è stato thinking in C++ di
Bruce Eckel (una delle prime edizioni).
Vorrei in qualche modo migliorare la mia comprensione del linguaggio
avvicinandomi in particolar modo alla STL sulla quale risulto ancora
molto carente, idem per l'uso dei template in genere.
Che testi mi consigliereste per i miei approfondimenti? Magari l'ultima
edizione del testo di Eckel è adeguata...
Grazie
	Fabrizio
P.s.: se non esiste già sarebbe bello fare una bibliografia consigliata
dal newsgroup ...

 dal newsgroup ...
C'è sulle FAQ:
http://www.emagsoftware.it/faqcpp.htm
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

Newsgroup: it.comp.lang.c++
Titolo: Statict Text

Scusate la domanda scema, ma mi ci sto impazzendo da una settimana...
Devo cambiare il testo ad uno "Static text" creato con il resource editor
del VC 5.0 all'  interno dell' applicazione. Ho tentato di farmi tornare il
puntatore all' oggetto con la funzione GetDlgItem() .. Ma ho un assertion
error in quanto "sembrerebbe" che tale finestra (quella del testo..) non
esista...
Ora mi chiedo: esiste un modo rapido o devo fare tutto a mano (0vvero creare
un oggetto CStatic con un determinato testo, distruggerlo e ricostruirlo con
il testo nuovo)?
Ho anche provato con la funzione per cambiare la caption agli oggetti
(scusate ma proprio non ricordo il nome) ma ottengo lo stesso assertion
error...
Qualche idea?
Grazie
Francesco Aruta.

esista...
Probabilmente stai chiamando la GetDlgItem quando la finestra del
controllo static non esiste *ancora*.  Chiamala invece in OnInitDialog
del tuo dialogo, dopo avere chiamato l'OnInitDialog della classe
padre (o in punti ancora successivi dell'esecuzione).  Quivi,
    GetDlgItem(IDC_TEXT)->SetWindowText("Il mio testo");
ti funzionera` benissimo (naturalmente avrai cambiato l'identificatore
del controllo dal default IDC_STATIC).
Alex

controllo static non esiste *ancora*.  Chiamala invece in OnInitDialog
Oooopsssss, Che scemo!!!!!!!
Grazie,
Francesco Aruta

Oooopsssss, Che scemo!!!!!!!
Mah, ci siamo caduti tutti all'inizio -- sono zone in cui lo "strato"
MFC sopra le API e` un po' troppo sottile (a mio giudizio), non
ti offre il "valore aggiunto" (che pure parrebbe naturale, visto
che tutti i principianti di MFC se lo aspettano...!) di, diciamo,
"virtualizzare" gli oggetti che incapsulano handle, permettendo
di farci dei settaggi prima che l'handle che incapsulino sia
creata (e applicandoli alla creazione).  Mah, tant'e`, meglio
abituarcisi, visto che cosi` e`, e cosi` restera`...!
Alex
Newsgroup: it.comp.lang.c++
Titolo: Neofita!

E' la prima volta che accedo a questo ng. E lo faccio per
necessità..... è anche la prima volta che cerco di fare un programma
(in C++ e per DOS).
Qualche anima pia può aiutarmi?
devo leggere da un file dei dati e devo memorizzarli secondo il
criterio che vado ad illustrare:
formato dati in input:
a b c d e
a: uno fra (a1 a2 a3 a4)
b: uno fra (b1 b2 b3)
c: uno fra (c1 c2 c3)
d: un numero
e: un numero
devo sommare i numeri di tutti gli input individuati dalla successione
a b c  ritrovandomi un output del tipo:
(a2) (b3) (c1) (somma dei numeri d) (somma  dei numeri e)
(a1) (b1) (c1) (somma dei numeri d) (somma  dei numeri e)
....... e così via.
e memorizzare tali dati per un ulteriore elaborazione.
La domanda è questa:
Come posso creare un metodo per "canalizzare" i numeri utilizzando le
classi del C++?
Tale "struttura" dovrebbe essere un qualcosa tipo albero, i cui dati
nei rami piu' esterni mantengano informazione dei nodi da cui
derivano...(ipotesi).
a1-------	b1---------	c1---------	(somma d) (somma e)
		c2---------	(somma d) (somma e)	
		c3---------	(somma d) (somma e)	
    	b2---------	c1---------	(somma d) (somma e)	
		c2---------	(somma d) (somma e)	
		c3---------	(somma d) (somma e)	
	b3---------	c1---------	(somma d) (somma e)	
		c2---------	(somma d) (somma e)	
		c3---------	(somma d) (somma e)	
a2....
a3....
Spero di essere stato chiaro.....Grazie anticipatamente, Fabio.

Spero di essere stato chiaro.....Grazie anticipatamente, Fabio.
Spiacente, ma per me non lo sei stato per nulla, infatti non
ho capito affatto quali sono le tue esigenze.  Se fossi in te
ricomincerei da capo, magari con un piccolo esempio o due
di possibili file di input e di output che desideri avere in
corrispondenza a detti file di input...!
Alex
Newsgroup: it.comp.lang.c++
Titolo: Dove posso trovare listati di programmi in c++ ?

Esiste qualche sito dove posso trovare listati di programmi in c++ ?
Matteo

Ciao,
    a breve ne troverai su 
www.programmazione.it
 anzi colgo l'occasione per
invitare chi possiede sorgenti che ritiene interessanti a contattarmi per
metterli a disposizione di tutti.
A presto :-)
Marco Abis
http://www.programmazione.it
  il sito Italiano di riferimento per IT
ab...@programmazione.it

Newsgroup: it.comp.lang.c++
Titolo: Dll con Dev-C++

Gentilmente potreste indicarmi l'url di un sito nel quale spieghi 
meticolosamente come creare una dll con Dev-C++ ???
Grazie!

 meticolosamente come creare una dll con Dev-C++ ???
Non è che sia tutto questo difficile... se tu RTFM, troveresti la 
risposta molto prima.

Massimo Soricetti ha scritto:

Com'e' il condizionale del verbo RTFM? :-P
Mi permetto di aggiungere, per l'OP, che molto spesso una ricerca su 
(es.) Google risolve un bel po' di problemi.
-- 
Roal Zanazzi

 
Il condizionale è "WRTFM", ma tu volevi dire "congiuntivo", vero? :)
M

Max M. ha scritto:

No, il congiuntivo l'ha scritto Massimo Soricetti (ma non concorda col tuo).
Ho chiesto il condizionale perche', si sa, il condizionale e' d'obbligo :-P
-- 
Roal Zanazzi



Salvatore, le questioni legate alla piattaforma di sviluppo Windows
vanno trattate nel gruppo apposito: it.comp.programmare.win32.
Rivolgiti lě.  Sono piů volte che ti viene detto.


Secondo me nel caso dell'OP si applica di piu' "SRTFM", come in "Lo so
che io SRTFM, ma..." ;-)
Ciao,
Nicola

che io SRTFM, ma..." ;-)
...io DWTRTFM perché c'è TFNG ;-)

Newsgroup: it.comp.lang.c++
Titolo: cosa sarebbero gli auto_ptr?

salve, leggendo nella faq di B.S. riguardo al C++ e alla gestione
semiautomatica della memoria ho letto qualcosa a riguardo di questa classe
ma non sono riuscito a trovare maggiori informazioni, nessuno gentilmente
ha un link ad un whitepaper o qualcosa di simile riguardo a questa classe?
grazie a tutti.

Michelangelo Giacomelli wrote:

 
http://www.gotw.ca/publications/using_auto_ptr_effectively.htm
 
Trovato con Google. Mi pare spieghi tutto quel che c'è da sapere.
Max

Max M. wrote:

Non sottovalutare nella lettura il concetto di "trasferimento di
ownership". Ci sono altre implementazioni piu' fini che non
soffrono di questa limitazione.
http://www.boost.org/libs/smart_ptr/smart_ptr.htm
Gaetano

 grazie a tutti.
http://www.eptacom.net/pubblicazioni/pub_it/iso_7.html
Qui trovi un interessante articolo.
-- 
Tnk
Luca "Kleidemos" Francesca
Un computer a un altro quando si incontrano:
"Ciao, come ti boota oggi???"

 Qui trovi un interessante articolo.
ti ringrazio, ma mi sarebbe piaciuto anche avere commenti da parte di
persone che li hanno effettivamente usati in progetti.
cmq ringrazio tutti quelli che mi hanno risposto.
ciao
Newsgroup: it.comp.lang.c++
Titolo: Grafica in Visual Studio

Vorrei sapere come posso fare per cambiare colore al testo, allo sfondo e
anche a inserire uno straccio di grafica in un programma di mia
realizzazione riguardo il gioco della roulette utilizzando Microsoft Visual
Studio. Naturalmente ciň che mi servirebbe sono: le librerie grafiche
necessarie per le operazioni che ho elencato e le eventuali funzioni per
fare ciň.
Ringrazio in anticipo chi mi potrŕ dare un'aiuto.
Fusi Alessio
ale...@katamail.com
-- 
Posted from 
c000-h011.c000.muc.cp.net
 [209.228.29.35] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

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 Dos/Win 3.x: it.comp.os.dos
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: Thread in DOS...

Ciao a tutti.
Avrei un quesito da porvi. Sto realizzando una infrastruttura ad oggetti di
base per le mia aplicazioni in Borland C++ DOS.
Vorrei implementare una specie di struttura a processi.
Come posso fare?
In pratica mi servirebbe qualcosa del genere.
Una funzione main principale richiama vari sottoprocessi, ai quali però dopo
un tot di tempo deve poter togliere il controllo per concederlo ad un altro
per poi riconsegnarglielo, un po' come fa Windows.
Avvicinandoci ancora di più al codice, da una funzione principale dovrei
poter chiamare sotto funzioni, riuscire a interromperle ad intervalli
specificati e a riprendere dalla posizione precedente.
Quello che non so fare, e che non so se si possa fare, è appunto
interrompere il flusso del programma a intervalli determinati, tipo
interrupt.
Naturalmente se Windows lo fa deve essere possibile fare qualcosa del
genere.
Prediamo ad esempio un semplice gioco di navicelline stile dos antico.
Se "contemporaneamente" il gioco deve muovere gli spari, le navicelle
nemiche e controllare lo stato della tastiera credo che quasto vada
realizzato tramite vari thread, giusto?
Qualcuno ha consigli da darmi?
Se questa soluzione risulta troppo complessa si potrebbe realizzare
l'interruzione del processo in modo volontario, tramite una chiamata del
tipo DoEvents del VB, ma anche questa mi pare impossibile.
I consigli sono ben accetti!
Grazie in anticipo! ;)

 realizzato tramite vari thread, giusto?
Se hai i thread, sì. Se invece non ce li hai e il problema è solo questo,
puoi inserire tu una funzione "temporizzatrice" che ciclicamente richiama le
altre funzioni, che a questo punto devono essere semplici e in grado di
continuare a lavorare da dove avevano terminato.
Niente doevents:
muovi_sparo(){
for (each missile_in_volo){
    muovi_di_un_pezzetto();
    if (colpito)
        bang();
}
}
...
int main(){
...
for (;;;){
    muovi_navi();
    muovi_giocatore();
    muovi_sparo();
    sleep(x);
}
}
Eventualmente puoi temporizzare meglio le azioni, per esempio puoi decidere
che il giocatore si muove a velocità doppia rispetto agli altri oggetti, per
cui ad ogni ciclo incrementi una variabile e alcune funizioni le chiami solo
quando la variabile è pari.
Nota che, ad esempio, la funzione che controlla le azioni del giocatore
potrebbe essere in grado di processare tutti gli input dati mentre stava
elaborando altri oggetti, quindi fino a che il buffer di tastiera è vuoto.
Oppure no, dipende da te.
--
Alessandro Monti

 elaborando altri oggetti, quindi fino a che il buffer di tastiera č vuoto.


 è un idea un po' contorta....
No, mi sembra la stessa, solo realizzata ad oggetti. In realtà la complichi
un tantino, e in un videogioco potresti pagarlo con la lentezza.
--
Alessandro Monti
Newsgroup: it.comp.lang.c++
Titolo: MSVC++ Subscription cos'è, come si fa, che vantag

Messaggio a più sezioni in formato MIME.
------=_NextPart_000_01BC3FAD.FA6BEB80
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Ho comprato nella primavera '96 (tramite licenza studente Microsoft) VB4 &
VC++, anche se ho cominciato ad usare quest'ultimo solamente dal dicembre
scorso.
Ho provato a eseguire il programma di registrazione in linea del software
ma non mi è mai riuscito (rimane collegato per un po' poi si disconnette).
Mi piacerebbe registrarmi, ma non so nè cosa implichi nè cosa serva.
C'è qualcuno che mi può dire qualcosa a proposito o indirizzarmi a una faq
o q&a o qualcosa del genere sull'argomento?
Vi ringrazio in anticipo per le eventuali risposte
Matteo Acerbi (Teex)
-- 
// T
// E	e-mail: 
matteo...@re.nettuno.it
// E	www: 
http://non.vi.conviene/cliccare.qui
// X	(c) 1997, Teexoft Corp.	
------=_NextPart_000_01BC3FAD.FA6BEB80
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
<html><head></head><BODY bgcolor=3D"#C8E0D8"><p><font size=3D3 =
color=3D"#000080" face=3D"Times New Roman">Ho comprato nella primavera =
'96 (tramite licenza studente Microsoft) VB4 &amp; VC++, anche se ho =
cominciato ad usare quest'ultimo solamente dal dicembre =
scorso.<br><br>Ho provato a eseguire il programma di registrazione in =
linea del software ma non mi =E8 mai riuscito (rimane collegato per un =
po' poi si disconnette).<br><br>Mi piacerebbe registrarmi, ma non so =
n=E8 cosa implichi n=E8 cosa serva.<br>C'=E8 qualcuno che mi pu=F2 dire =
qualcosa a proposito o indirizzarmi a una faq o q&amp;a o qualcosa del =
genere sull'argomento?<br><br>Vi ringrazio in anticipo per le eventuali =
risposte<br><br>Matteo Acerbi (Teex)<br>-- <br>// T<br>// E&#009;e-mail: =
<font color=3D"#0000FF"><u>
matteo...@re.nettuno.it
</u><font =
color=3D"#000080"><br>// E&#009;www: <font =
color=3D"#0000FF"><u>
http://non.vi.conviene/cliccare.qui
</u><font =
color=3D"#000080"><br>// X&#009;(c) 1997, Teexoft Corp.&#009;<br><font =
size=3D2 color=3D"#000000" face=3D"Arial"><br><br></p>
</font></font></font></font></font></font></body></html>
------=_NextPart_000_01BC3FAD.FA6BEB80--

...
Ho comprato nella primavera '96 (tramite licenza studente Microsoft) VB4 &
VC++, anche se ho cominciato ad usare quest'ultimo solamente dal dicembre
scorso.
Ho provato a eseguire il programma di registrazione in linea del software
ma non mi è mai riuscito (rimane collegato per un po' poi si disconnette).
Mi piacerebbe registrarmi, ma non so nè cosa implichi nè cosa serva.
C'è qualcuno che mi può dire qualcosa a proposito o indirizzarmi a una faq
o q&a o qualcosa del genere sull'argomento?
Vi ringrazio in anticipo per le eventuali risposte
Matteo Acerbi (Teex)
-- 
// T
// E	e-mail: 
matteo...@re.nettuno.it
// E	www: 
http://non.vi.conviene/cliccare.qui
// X	(c) 1997, Teexoft Corp.	
----------

Mi piacerebbe registrarmi, ma non so nè cosa implichi nè cosa serva.
Serve a poco e niente: ti assicuro che ne sanno meno di te!
Saluti,
	Paolo.
P.S.
Evita di postare in HTML....grazie!
Newsgroup: it.comp.lang.c++
Titolo: linea di comando

Salve,
sotto l'ambiente "Microsoft Visual C++ 6.0" come si imposta la linea di
comando?
Quando parte l'eseguibile vorrei settargli una linea di comando iniziale ma
non so dove andare per settarla!!
Grazie a tutti
xoooox
--------------------------------
Inviato via 
http://usenet.libero.it

 xoooox
Project -> Settings -> scheda "Debug" -> Program arguments
--
imho

Newsgroup: it.comp.lang.c++
Titolo: dove c++?

Salve a tutti. Volevo sapere se c'e' qualche sito dove poter scaricare
C++ per windows  o dos. Magari se fosse completo di debugger e
identatore.
Grazie e ciao.
Cordiali saluti.
Matteo.

 C++ per windows  o dos.
Per DOS c'è il DJGPP all'indirizzo 
http://www.delorie.com/djgpp
.
EMG

Newsgroup: it.comp.lang.c++
Titolo: Scioccante video di Alba e Cristina 50504

 Scioccante video hard di Cristina... e
no.email.address.entered?
Che vuol dire?


E' un utente di 
tin.it
.
Quando ha inviato il post aveva l' ip 213.45.151.175 e l' ho gia' segnalato
all' 
ab...@tin.it
.
Staremo a vedere.
ciao, hal

Newsgroup: it.comp.lang.c++
Titolo: compilazione condizionale.

Ciao, poiche' mi trovo a dover rimettere mano a del codice pre ansi
vorrei sapere se lo standard prevede una define apposita per la
compilazione ( una specie di #define ANSICPLUSPLUS per capirsi)
riconosciuta dai vari compilatori per poter capire quando includere i
vecchi header o quelli nuovi.
Altra cosa, e' consigliabile mettere un using std::cout nell' header
file o puo' causare problemi?
Grazie 1000

 file o puo' causare problemi?
Può causare problemi di conflitto sulla parola "cout" nel caso tu abbia
da qualche altra parte un'altra "cout" (piuttosto improbabile, direi)
In generale, però, è cattiva pratica mettere la direttiva "using" in un file
header proprio a causa del possibile inquinamento involontario del
namespace globale
-- 
Gerolamo

Newsgroup: it.comp.lang.c++
Titolo: [ot] come convertire un immagine da colori a liv di grigio?

Scusate l'off tipic , ma nn so coem fare a convertire un immagine da colori
a livelli di grigio.
passare cioè da un pixel codificato  in rgb e mettere un valore
corrispondente al livello di griigo.
ho provato a fare la somma e dividere per 3 , ma in questo caso ovviamente
il rosso , il blu e il verde hanno tutti la stessa tonalità.
Un aiutino?
se potete postatemelo in mail a 
lu...@kokkus.com

 Un aiutino?
Siano R, G e B le componenti del pixel, sia Y la luminanza del pixel, la 
formula tipicamente utilizata, che tiene conto della sensinilitą 
dell'occhio umano alle componenti RGB, č:
     Y = 0.30*R + 0.59*G + 0.11*B;
-- 
"Everything is vague to a degree you do not realize till you have tried
  to make it precise"
"Ogni cosa č vaga in una misura di cui non ci si rende conto finché non
  si cerca di renderla precisa"
                                       Bertrand Russell
                                       The Philosophy of Logical Atomism

      Y = 0.30*R + 0.59*G + 0.11*B;
Grazie mille!!!!!!
Newsgroup: it.comp.lang.c++
Titolo: ancora su #ifndef per gli include

> 
http://www.geocities.com/sunsetstrip/stage/7787
 <<
<<<<<<<<<<<< 
DucaCr...@iol.it
 >>>>>>>>>>>>>>
*** la vita è come l'erba cattiva
                                                  (Milan Kundera)

compilato più volte nel built del progetto.
Lo e`, infatti.
Personalmente, non vedo perche` non mettere ANCHE #ifndef/#define
prima del #pragma once, cosi` da non introdurre inutili incompatibilita`;
e` d'altronde questa anche la prassi seguita dagli header scritti dalla
stessa Microsoft.  Il #pragma once in *aggiunta* agli #ifndef ecc risparmia
al compilatore di dover anche solo *riaprire* il file di header (e riparsarlo
inutilmente, o consumare memoria per "ricordare" tutti gli header gia`
parsati, ecc ecc) e quindi accelera la compilazione (Lakos, allo stesso
scopo, consiglia di porre il #ifndef *attorno* alle #include e non solo
dentro agli header file, ma questo e` decisamente scomodo/inelegante).
Alex

Newsgroup: it.comp.lang.c++
Titolo: problemi a compilare

 prova: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), not stripped
viene creato l'eseguibile prova. Il mio problema è che poi non riesco a 
eseguire il file ne nella shell Bourne ne cliccandoci sopra.
Ho letto sia il manuale di ggc ( nella sezione relativa) sia qualche 
tutorial online e mi sembra che non ci dovrebbero essere altre azioni da 
compiere prima di far funzionare l'eseguibile che è anche piuttosto 
semplice.
Il fatto di non verificare quello che studio sul manuale è un grosso 
svantaggio e io uso gcc perchè è quello installato nella mia release ( 
mandriva 2006). E' ricco di opzioni ma a me non servono ora perchè devo 
ancora imparare il c++. Magari dopo avrà più senso utilizzarle
qualcuno può darmi qualche suggerimento?
Grazie
Alessia

mi autocensuro prima che vi arrabbiate tutti
ho risolto da me il problema
sbagliavo a dare il comando alla shell
grazie comunque
Alessia
Alessia Moretti ha scritto:


 shell Bourne
./prova         funziona?
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Dept. of Physics, Univ. of Padova, Italy              ROT13: 
ybe...@cq.vasa.vg

 gcc e' il front-end per il linguaggio C (NON C++)
GCC è il "GNU Compiler Collection", cioè una collezione di
compilatori per molti linguagi (C, C++, Objective C, Java,
Fortran e Ada, al meno).  E gcc e g++ invocano cpp1plus, il
front-end per C++, se il nuome del sorgente finisce con .cc o
.cpp. G++ inveci aggiunge automaticalemente le biblioteche per
il C++ standard, gcc non.
--
James Kanze (GABI Software)             
email:james...@gmail.com
Conseils en informatique orientée objet/
                   Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, 
+33 (0)1 30 23 00 34

 
Grazie, questa spiegazione mi ha chiarito perchč con gcc mi da la 
libreria iostream non trovata mentre g++ la trova regolarmente
ora posso continuare a provare gli esempi  egli esercizi
Alessia
Newsgroup: it.comp.lang.c++
Titolo: md5 in c/c++

qualcuno sa dove posso scaricare una funzione
simile al php {string md5(string str)} in c o c++?
grazie


Mezza giornata e lo implementi
Ciao
Gaetano.
-- 
Posted from 
nts-03.mm.eutelsat.org
 [194.214.173.15] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Newsgroup: it.comp.lang.c++
Titolo: Dubbio su casting a puntatore a funzione

Salve a tutti.
Non capisco il comportamento del compilatore in merito a questo 
frammento di codice:
double (*cosine)(double);
void* put_cos = [inizializza put_cos con un puntatore all'indirizzo di 
una funzione col prototipo dichiarato prima]
cosine=(double(*)(double))(put_cos);
compilato col g++ (3.4) mi da il seguente errore:
error: ISO C++ forbids casting between pointer-to-function and 
pointer-to-object
mentre se cambio il codice in:
double (*cosine)(double);
void* put_cos = dlsym(handle, "cos");
cosine=reinterpret_cast<double(*)(double)>(put_cos);
tutto va a buon fine, ma i due tipi di casting non dovrebbero essere 
equivalenti?
Ciao.
C.
-- 
"...l'utopia non e' l'irrealizzabile ma l'irrealizzato..."
Cage Autoproclamatosi fan N°1 di Sucaman
zetalab : 
http://www.inventati.org/zetalab/
homepage: 
http://www.autistici.org/interzona/

 equivalenti?
Equivalenti no, ma comunque ad occhio mi ricordavo un comportamento
inverso, sempre con g++ 3.4.
-- 
int

int i=0 ha scritto:

Infatti hai ragione, li ho scambiati per errore!!
Ma se non sono equivalenti, quali sono le differenze?


 Ma se non sono equivalenti, quali sono le differenze?
L'introduzione dei _cast<>() in c++ serve ad evitare il cast di
differenti categorie di tipi, per esempio puntatori a oggetti con
puntatori a funzioni, puntatori a funzioni membro con oggetti e cosě
via. Serve a limitare i danni di un uso indiscriminato o errato del cast
stile C, il quale viene riservato per le cose piu` pericolose ma
comunque fattibili.
Saluti
-- 
int

 L'introduzione dei _cast<>() in c++ serve ad evitare il cast di
[...]
Ahh...ho capito! Sei stato chiarissimo. Grazie.

Newsgroup: it.comp.lang.c++
Titolo: DLL in C++ per VB

Ciao,
volevo chiedervi se è possibile, e come, realizzare una libreria in c++ con
Visual C++ per essere poi utilizzata in Visual Basic. Se volessi fare per
esempio una funziona che riceve 2 valori interi e li somma...è possibile ?
come va' dichiarata in Visual Basic ?
GRAZIE
P.S: Ho VB e VC++ 6



 ha scritto nel
messaggio news:8smsio$7$2...@nslave3.tin.it...

La maledetta somma di due interi... ho il computer pieno di "somma.dll"
scritte in C++ e chiamate da VB, ho affrontato (e risolto) il problema
proprio in questi giorni.
Allora iniziamo:
1) apri VC++ e scegli come progetto "Dinamic Link Library for Win32"
2) dagli il nome "somma" (attento, il C++ è "case sensitive" quindi "somma"
è diverso da "Somma")
3) aggiungi un source file al progettochiamandolo sempre somma
(probabilmente non è necessario usare lo stesso nome ma non si sa mai)
4) in questo file scrivi il seguente codice:
int __declspec(dllexport) __stdcall somma (int x, int y)
{ 
    return (x+y};
}
5) aggiungi al progetto un text file ma quando gli dai un nome dagli l'estensione .def (somma.def)
6) in questo file scrivi esattamente così(occhio alle maiuscole)
LIBRARY somma
EXPORTS
         somma
7) a questo punto avvia il debug e lui ti compilerà la tua dll
8) copia nella cartella C:\Windows\System i file somma.dll e somma.def
8) nel programma VB dichiara la funzione così:
Public Declare function somma Lib "somma.dll" (ByVal x as Integer, ByVal y as integer) As Integer
9) ora puoi usare la funzione somma come una qualsiasi funzione VB
Spero di non aver commesso errori, ciao
Newsgroup: it.comp.lang.c++
Titolo: stringhe style c

Da quanto ho capito una stringa viene allocata staticamente.
Ora nella funzione modifica_Persona dichiaro e definisco v e alloco mem per
"Ale" e
faccio puntare s.nome allo stesso indirizzo di v.
Ma eseguendo il debug noto che il  valore di s.nome è 'A' e non ale\0
e quando nel main stampo s.nome ottengo una cosa insensata.
Ma come mai se  nel main e dichiaro v e faccio la stessa conversione
implicita' funziona?
struct Persona{
char * nome;
char * cognome;
};
Persona s;
void modifica_Persona();
void modifica_Persona(){
char v[]="Ale";
s.nome=v; // conversione implicita da char[] a char*
s.cognome="XXX";
}
int main(int argc, char* argv[])
{
modifica_Persona();
printf("%s\n",s.nome);
printf("%s\n",s.cognome);
return 0;
}
Ale.

Ale.
Ciao Ale,
non indago piu´ di tanto sul tuo codice (quel modifica_Persona() non mi
piace affatto), perche´ ci sarebbero tante cose da dire, ma ora ho poco
tempo.
Comunque risolverai questo problema aggiungendo la parola static cosi´ :
static char v[] = "Ale";
al posto di quello che avevi scritto.
Questo perche´ v[] senza static e´ locale alla funzione e sara´ buttata via
alla fine della funzione, per cui, copiandone l´indirizzo al tuo puntatore
nome, hai solo causato il fatto che poi quando nome sara´ utilizzato, andra´
a pescare il valore da stampare in un indirizzo che oramai conterra´ solo
"immondizia".
Se invece la dichiari static, il valore sara´ ancora valido anche quando
sarai uscito dalla funzione.
Maurus

 sarai uscito dalla funzione.
La seguente frase mi ha confuso le idee "Una stringa letterale viene
allocata staticamente, percio' non ci sono
problemi nel  restituirla come risultato di una funzione."
Sebbene questo non sia il mio caso pensavo che la memoria assegnata a v
fosse statica e che quindi tale variabile
non venisse distrutta anche se locale.
Ma allora mi sorge spontanea anche questa domanda:
Quando io assegno a s.cognome="XXX", cosa succede viene assegnata memoria
statica in grado di contenere
"XXX" e s.cognome viene fatto puntare a questa area.
Sempre a causa di quella frase io pensavo che la variabile locale v puntasse
a una zona di memoria statica
in grado di contenere "Ale".
Ale.

 non venisse distrutta anche se locale.
v non è un puntatore, è un array di caratteri che viene *inizializzato*
con una copia del contenuto del letterale stringa. Il letterale è sì
allocato staticamente, ma la *copia* in v ha vita limitata allo scope
delle funzione.
Confronta
 const char* 
 func() 
 {
  char v[] = "ciao";
  return v; //  undefined behaviour, v è un array locale
 }
con 
 const char* 
 func() 
 {
  const char* v = "ciao";
  return v; // OK, la funzione restituisce l'indirizzo di "ciao"
 }
Max


Grazie, ora č chiaro.
Newsgroup: it.comp.lang.c++
Titolo: Free IDE per BCC 5.5...

Ho intenzione di scrivere un IDE free(magari open source) per il Borland C++
Compiler (a proposito, dovrei chiedere l'autorizzazione alla Borland per
fare una cosa del genere?) e nell'esaminare il lavoro che mi aspetta, mi č
sorto un problema.
In un qualsiasi IDE, durante la fase di debug, ma non solo, come nel caso di
Delphi o del C++ Builder, il controllo che contiene il codice del sorgente
permette di "evidenziare" la linea coinvolta in un particolare evento (come
nel tracing, ad esempio, o nella segnalazione della posizione di un
eventuale errore), impostando il colore di background della linea
stessa...bello da vedere ma difficile da implementare!
Qualcuno sa come č possibile dotare un TRichEdit di tale potenzialitŕ senza
dover scrivere un componente nuovo da zero.
Grazie.
P.S.: Cercasi volenterosi collaboratori per il proggetto, magari qualcuno
che voglia prendersi la briga del debugger, perchč altrimenti i miei esami
andranno indietro e piuttosto che avanti!

che voglia prendersi la briga del debugger, perchè altrimenti i miei esami

Newsgroup: it.comp.lang.c++
Titolo: Aiuto!!! Tesi...

Stò provando a fare girare un simulatore in scritto in C++ (io per il
momento conosco solo il C)
ma quando compilo spunta sempre un errore del tipo:
ACCESS VIOLATION OCCURRED AT 0x0390E25: Attempt to access 0xFFFFFFFF
L'ultimo sembra un indirizzo di memoria (ed ho notato che è sempre lo
stesso, mentre nel primo cambiano i caratteri solo dopo il 3, ma sempre
simili l'uno all'altro)
Che diavolo significa???? Qualcuno può aiutarmi?
Vi prego mi serve urgentemente per la tesi .
 Il mio indirizzo è 
nel...@tin.it
oppure 
seb...@dimtel.nti.it
 Grazie in anticipo a chiunque mi voglia aiutare.....
SEby


Quando esegui un processo in un sistema multi task, non hai l'intero spazio
di memoria a tua disposizione, ma un insiemi di indirizzi assegnati dal
sistema operativo. Se un'istruzione del processo tenta di accedere ad un
indirizzo esterno a quelli assegnati , il sistema op. lo rileva e segnala la
violazione, se l'errore avviene in fase di compilazione , sono presenti nel
sorgenti istruzioni dirette che causano questa violazione e che possono
essere rilevate direttamente in fase di compilazione. Il primo indirizzo
individua la locazione di memoria che contiene l'istruzione che ha causato
la violazione di indirizzamento, quindi puo' variare, con ogni probabilita'
un istruzione di accesso a memoria in lettura o scrittura, oppure un
istruzione di salto assoluto, (parlo di istruzioni in codice macchina non di
istruzioni in linguaggio di programmazione).
Mentre il secondo indirizzo individua la locazione di memoria a cui si tenta
di accedere causando la violazione.
Un'altra possibile causa di questo errore, e' l'aver assegnato ad un
puntatore un indirizzo non valido e poi aver tentato di accedere alla
memoria corrispondente.

Newsgroup: it.comp.lang.c++
Titolo: C++ Warning

Sono alle prime armi con il C++ , ho appena
installato il compilatore DJGPP ho fatto un
miniprogrammino di 3 righe per vedere come
funziona , ma quando lancio la compilazione
mi apre il seguente errore :
" C:\DJGPP\Lang\cxx\streambu.h(471)  WARNING
  'void x' is not a pointer-to-object"
Vorrei sapere se e' un errore cel compilatore che
non e' installato bene oppure un errore del mio
programmino .
Grazie mille.

 Grazie mille.
Posta il programmino.


Cosě "ad occhio e croce" č un errore del programmino...:-)

Dog Foot wrote:

x č un metodo o una variabile? se č una variabile (come si vede) allora 
manca un bell'asterisco, sempre che tu voglia un puntatore a void*.
Ciao

 programmino .
E' un errore del tuo programmino. 
(Per altro, il messaggio non dice 'void x', ma 'void *'.)
Per ulteriori delucidazioni, dovresti mostrare il codice.
Max


Ti hanno già risposto, volevo solo suggerirti, per il futuro, che 
l'errore nel compilatore dovrebbe sempre essere l'ultima cosa a cui 
pensare, non la prima. Ti risparmierà un sacco di tempo.

 ha scritto nel messaggio
news:1YF%b.36626$FJ6.1...@twister1.libero.it...


>   'void x' is not a pointer-to-object"
Questo sembra un problema del compilatore (streambu.h probabilmente e`
un header di sistema incluso da <iostream>), ma essendo un warning non
dovrebbe fermare la compilazione.
        Mauro

 }
La versione corretta è
  #include <iostream>
  int main()
  { 
        std::cout << " Ciao ciao ";
        return(0 );
  }
Attenzione: ignora il mio commento di ieri: non avevo notato che il 
messaggio di warning si riferiva al file header 'streambu.h' .
Alla luce di questo, ho ragioni per sospettare si tratti di un problema di 
incompatibilità tra compilatore e libreria standard. E' possibile che a 
quella riga ci sia un'istruzione 'delete' seguita da un'espressione di tipo 
'void*', che, pur non valida in C++, era probabilmente accettata da 
versioni precedenti del compilatore. Assicurati di aver installato le 
versioni più recenti di compilatore e libreria.
Max

 ha scritto nel messaggio
news:c1qb66$bvv$1...@newsreader.mailgate.org...


un programma piu complesso :-(
Un consiglio: scaricati il Dev C++
(
http://www.bloodshed.net/dev/devcpp.html
), che e' facile da
installare, aggiornalo all'ultima versione e have fun!
Ciao,
Zeppe

 there where some errors
Non e' che semplicemente, avendo tu inserito il codice in un file con
estensione .c, il compilatore lo compila come fosse C e non C++? Prova
a rinominare il file in ciao.cpp .
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: scope statico e dinamico

Salve
ho letto che lo scope statico è quello più utilizzato nei linguaggi 
moderni, mentre quello dinamico seppur semplice da implementare è 
utilizzato in pochi linguaggi.
nel caso del C/C++ come funziona?
grazie


tutto scope statico
(i riferimenti alle variabili sono risolti al momento della
compilazione)
ciao,
Marco

Marco De Paoli ha scritto:

nel ringraziarla volevo aggiungere un'ultima domanda :)
se in C codifico una funzione ricosiva o un vettore allocato 
dinamicamente , in tal caso che tipo di scope si utilizzerà?
buona giornata

 dinamicamente , in tal caso che tipo di scope si utilizzerà?
scope statico significa che già il compilatore riesce a stabilire,
detto in soldoni, a quale zona di memoria dovrà puntare per accedere
al valore di una variabile
solitamente l'indirizzo di questa zona di memoria è espresso come
posizione relativa rispetto alla cima dello stack
(tralasciando volutamente accesso ai registri per non complicare
inutilmente la spiegazione)
ogni chiamata a funzione (anche nel caso ricorsivo) alloca un nuovo
frame sullo stack
di conseguenza in base a quanto detto prima in ogni istante di
esecuzione ci saranno, per ognuna delle variabili della funzione,
tante zone di memoria allocate sullo stack quante sono state le
chiamate
allocare un oggetto sullo heap (caso del vettore allocato
dinamicamente) e passarne il puntatore è uno dei modi per condividere
dei dati tra funzioni diverse o chiamate diverse della stessa funzione
(altri modi sono le variabili globali e le variabili membro)
spero di essere stato chiaro
Marco
Newsgroup: it.comp.lang.c++
Titolo: parser in C++

Salve,
qualcuno sa dirmi dove posso scaricare il codice sorgente di un parser per
espressioni matematiche in c++?
grazie
--
Massimo Di Casola
Email: 
max...@iol.it
"...non amo che le rose
che non colsi. Non amo che le cose
che potevano essere e non sono state."
(Guido Gozzano)

Prova ad usare Bison: e' un generatore di parser per C e lo trovi su
Simtel
ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/bsn125b.zip
la documentazione e' in bsn125d.zip e contiene vari esempi di parser
per espressioni matematiche.
Ciao
RSte
rste79...@hotmail.com

Sono troppo stupido se domando cos'è un parser?
Immagino di sì...
--
Diego "1985" Pettenò
per gli spammer la mail è
diego...@hotmail.com
ATTENZIONE: rispondo ai messaggi di pubblicità indesiderata
su TiscaliNet con un bel messaggio al provider di competenza!
per i messaggi seri è
diego....@tiscalinet.it

]

 compilatore vero e proprio.
E questa seconda parte e` il parser, detto anche analizzatore
sintattico.
Naturalmente puo` servire "feedback" fra le due parti (almeno
in un linguaggio come il C, o C++, dove un "typedef" puo`
cambiare il valore lessicale di un identificatore a "nome-tipo";
non e` obbligatorio implementarlo come "callback" del parser
allo scanner, ma e` l'architettura + tipica e semplice).
Alex

Scusate, ma non c'era nulla di questo genere sul libro con cui ho imparato
le basi del C++ (e poi, per andare avanti, ho usato l'help in linea e
voi...).
Scusate.


 voi...).
Corri a comprarti: "Algoritmi + strutture dati = programmi". Fa riferimento
al Pascal, ma è leggibilissimo anche se non lo conosci.
--
Alessandro Monti

 
Concordo pienamente. Anzi trovo che chi programma in C++, e quindi si
presume smanii per la programmazione a oggetti, farebbe comunque molto
bene a studiarsi anche i "vecchi" principi di programmazione
strutturata.
Ciao,
Nicola


-- 
God is Real, unless declared Integer.
ObjectZone - 
http://space.tin.it/computer/csadun/

 sbilenche a manetta.
Si, è vero, ma comunque i principi sono chiari ugualmente. Basta non provare
a compilare gli esempi...
Chissà se si trova in giro qualche nuova edizione più corretta...
--
Alessandro Monti