mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: aiutooo!

Stò realizzando un programma dove devo convertire un codice ascii nel
rispettivo valore binario. C'è qualche funzione standar che mi
trasforma un char direttamente nel valore ascii e poi direttamente me
lo trasforma in base 2 (binario) ? Qualcuno di voi ha un codice già
fatto giusto per rendermi un'idea di perchè il mio non funziona?
Grazie
---------------------------------------------------
messaggio di: credici
---------------------------------------------------

 Grazie
O io non ho capito la domanda o tu non hai capito nulla dell'ASCII e della
rappresentazione binaria.
In un sistema che usa ASCII come codice di rappresentazione dei caratteri, una
variabile di tipo char contiene appunto il codice ASCII di un carattere.
Ovvero "char c='A';" equivale a "char c=(char)65;".
Inoltre in un sistema di calcolo digitale la rappresentazione binaria e'
intrinseca in qualunque valore.
In altre parole: c'e' il 99,9 periodico % (ovvero il 100%) di probabilita' che
sul sistema con cui lavori tu la tua variabile di tipo char contiene una
rappresentazione binaria del codice ASCII del carattere che gli hai assegnato.
Se fossi uno di quei pochi che hanno accesso ad un sistema non binario o che non
usa ASCII come rappresentazione, credo proprio che non faresti neppure questa
domanda!
Ovviamente, se quello che vuoi e' una variabile intera che contiene il valore
numerico corrispondente al codice ASCII del tuo carattere basta assegnarla.
char c='A';
int i=c;
oppure anche:
int i='A';
che funziona per promozione intrinseca del tipo.
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

forse non mi sono ben spiegato.. ci riprovo. 
Io ho una variabile dove c'è la lettera C (per esempio). Come faccio a
ricavarne il suo valore binario (che in teoria sarebbe 01000011) ? La
mia idea era di  convertire in base due il codice ascci (che è in base
10) così mi ritrovo il valore binario ma volevo sapere se esistevano
funzioni standar che già mi convertissero tutto automaticamente. (io
la lettera la ricevo da file) Infatti quel codice binario mi serve poi
per altre cose. Sono stato più chiaro? (speriamo)


cre...@infinito.it
 (credici) writes:

Come stampare un valore numerico in binario e' una domanda cui e'
stato risposto un paio di giorni fa; in particolare da me e da (mi
sembra) Andrea Laforgia.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it
The instructions said to use Windows 98 or better - so I installed FreeBSD.

grazie per l'email ^_^ 

Newsgroup: it.comp.lang.c++
Titolo: MultiTasking

Salve ,
ecco la situazione :
ho un programma in cui e' fondamentale la velocita' di calcolo , e so
che e' una certa funzione a rallentare il tutto.
Domanda : posso chiamare la stessa funzione senza aspettare che una
chiamata venga soddisfatta , in modo da sfruttare il multitasking? 
Devo usare una dll ?

>Devo usare una dll ?
Non serve. Se parli di dll presumo quindi che usi Windows.
Antonio


Ciao,
l'ideale è creare un thread (guarda l'help su AfxBeginThread) dandogli la
più bassa priorità (THREAD_PRIORITY_LOWEST) che svolge il tuo calcolo, in
questo modo il PC non sarà mai piantato (quindi gli altri thread gireranno
comunque) e la tua ruotine di calcolo verrà in un certo senso *premiata* dal
kernel e verrà comunque eseguita molto velocemente.
Newsgroup: it.comp.lang.c++
Titolo: Funzione system()

Ciao a tutti,
non ho capito molto bene se la funzione system() è in grado di
ritornare l'output del comando richiamato oppure se ritorna solo un
INT.
ci sono magari diverse versioni di tale funzione?
grazie mille
 Marco

 ha scritto:

Dal man di Linux per system (man 3 system)
RETURN VALUE
       The value returned is 127 if the execve() call for /bin/sh
       fails,  -1  if there was another error and the return code
       of the command otherwise.
 
       If the value of string is NULL, system()  returns  nonzero
       if the shell is available, and zero if not.
 
       system()  does  not  affect  the  wait status of any other
       children.

        children.
Direi che e' abbastanza consistente (anche se forse non identica) con la
documentazione MS:
If command is NULL and the command interpreter is found, returns a nonzero
value. If the command interpreter is not found, returns 0 and sets errno to
ENOENT. If command is not NULL, system returns the value that is returned by the
command interpreter. It returns the value 0 only if the command interpreter
returns the value 0. A return value of - 1 indicates an error, and errno is set
to one of the following values:
E2BIG   Argument list (which is system dependent) is too big.
ENOENT  Command interpreter cannot be found.
ENOEXEC Command-interpreter file has invalid format and is not executable.
ENOMEM  Not enough memory is available to execute command; or available memory
has been corrupted; or invalid block exists, indicating that process making call
was not allocated properly.
The system function passes command to the command interpreter, which executes
the string as an operating-system command. system refers to the COMSPEC and PATH
environment variables that locate the command-interpreter file. If command is
NULL, the function simply checks to see whether the command interpreter exists.
You must explicitly flush (using fflush or _flushall) or close any stream before
calling system.
--
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

 Dal man di Linux per system (man 3 system)
Se hai bisogno dell'output del comando, chiama popen e leggi la pipa
(man 3 popen) sotto un sistema conformante POSIX.  Se non hai un Unix,
non so cosa rispondere.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it
Q: Why do programmers always mix up Christmas and Halloween?
A: Because 25 Dec = 31 Oct

ci sono magari diverse versioni di tale funzione?
Credo di no.
Il Ghenio
-----
ZIO : Fun and games are over with. Anyone who dares
get in my way shall perish.
-----

(man 3 popen) sotto un sistema conformante POSIX.  
è proprio quello che serviva a me!!!
se come argomento *command* gli voglio passare 1 stringa C++ devo
avere l'accortezza di appenderci un NULLa char?
grazie mille
 Marco

  Marco
Newsgroup: it.comp.lang.c++
Titolo: Puntatore inutilizzabile prima e dopo l' upcasting

Sto scrivendo un programma sotto linux - gcc 3.3, con Qt 3 e quindi moc.
Ho alcune classi le quali
ereditano da una superclasse virtuale pura (GraphicFigure) con una funzione
virtual getFigureType()=0;
Queste classi si chiamano Environment, Polygon e Point. Sono pressocchè
identiche nella struttura.
Se creo un puntatore Environment* env = new Environment(); e poi faccio
GraphicFigure* fig = env; chiamando fig->getFigureType() funziona tutto
perfettamente.
Idem se lo faccio con Point, ma se lo faccio (chiaramente nello stesso
momento all' interno dello stasso metodo) con Polygon
il programma in esecuzione viene terminato al chiamare:
Polygon* poly = new Polygon();
GraphicFigure* fig = poly;
fig->getFigureType() //Terminato qui con una segmentation fault
Allora dopo ore e ore di prove ho provato a non ereditare da GraphicFigure,
evitare l' upcasting e scrivere una funzione diversa per ogni tipo da
gestire, ovvero nessuna delle tre classi era più una sottoclasse di
GraphicFigure.
Ho scritto questo codice:
Polygon* poly = new Polygon();
poly->getFigureType();
e tutto sembrava funzionare, ma se utilizzo un puntatore contenuto in una
classe, ovvero:
HEADER:
class Xxx
{
 private:
    Polygon* poly;
 public:
    Xxx();
    void xyz();
};
DEFINITION:
Xxx::Xxx()
{
  poly = new Polygon();
  poly->getFigureType();//Tutto OK
}
void Xxx::xyz()
{
  poly->getFigureType(); //Qua il programma viene terminato ancora per una
segmentation fault
}
Come appena detto, se chiamo xyz() DOPO aver inizializzato un oggetto tipo
Xxx => segmentation fault
Tutto ciò acade solo con la classe Polygon, perchè con le altre due classi
*identiche* non succede nulla e tutto funziona a dovere.
Questa è la dichiarazione di Polygon:
 class Polygon /* : public GraphicFigure */ {
  private:
        PolygonType primitive;
        QValueVector<Point*> vertexes;
  public:
        OGLCPolygon();
        void addVertex(Point* vertex);
        void removeVertex(Point* vertex);
        QValueVector<Point*> getVertexes();
        PolygonType getPrimitive();
        FigureType getFigureType();
 };
Gli altri metodi di Polygon funzionano regolarmente.
Sono disperato ho perso due mesi su questo problema.
Il mio programma è carino e soprattutto mi è fondamentale per 
sviluppare il codice di ulteriori programmi, il fatto che non funzioni solo
per questo mi rattrista moltissimo.
Nel caso fosse necessario il codice sorgente è disponibile e GPLlato basta
chiedermelo.
Ringrazio anticipatamente chiunque mi volesse dare un aiuto di qualsiasi
tipo.

Da quello che dici sembra che il tuo problema sia
da cercare nell'implementazione di
FigureType Polygon::getFigureType()
questo indipendentemente se tale funzione sia virtuale o no.
Cos'e' FigureType ? (qualcosa tipo un enum o una classe
piu' articolata?)
Forse dovresti postare l'implementazione di getFigureType()
(tra parentesi, non so cosa sia un QValueVector<>, ma va
bene tornarlo per valore in getVertexes() ?)
Saluti,
Fabio
Newsgroup: it.comp.lang.c++
Titolo: Abortire la stampa

Salve a tutti,
sto cercando di svuotare la coda di stampa sotto Windows NT e XP. Ho provato
con l'api AbortPrint() ma questa non funziona, seppur non tornando errori.
La stampa non avviene tramite api, ma uso l'oggetto TRichEdit del c++
Builder.
Qualcuno puņ aiutarmi, magari con un esempio?
Grazie,
Demis.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

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 
newsgroups.borland.com
 (prevalentemente in 
		inglese, ma si puo' postare anche in italiano)
Grazie,
Nicola Musatti


 


Newsgroup: it.comp.lang.c++
Titolo: Un programma in C++

Cerco un'anima pia che mi possa aiutare a scrivere un programma in C++ che
implementi il gioco della battaglia navale tra il computer ed un utente su
uno schermo di 10x10 caselle. La flotta è composta da una portaerei da 5
caselle e due sommergibili da 4 caselle.
Ringrazio cordialmente.

Si tratta di compiti a casa?


Newsgroup: it.comp.lang.c++
Titolo: Funzioni inline: quando conveniene usarle?

Ciao!
Quando conviene definire un metodo inline direttamente nell'header di una
classe, mentre quando è preferibile inserirlo nel file CPP? Ad esempio, se
il metodo è molto corto è meglio scriverlo direttamente nel .H?
Grazie.
Riccardo Rossi.

 il metodo è molto corto è meglio scriverlo direttamente nel .H?
Se è un metodo inline allora ti conviene metterlo in un file .h. La domanda
però forse era "quando conviene che un metodo sia inline"?
- get e set di variabili membro di una classe (molti fanno:
private:
int m_a;
public:
int setA(int a) { m_a = a; return m_a; }
int getA() const { return m_a; }
- la funzione è molto molto breve, fino a un paio di righe al massimo
- la funzione è molto breve (meno di prima) ma verrà richiamata
intensivamente all'interno di un ciclo.
Ricordati cmq che il compilatore ha il diritto di ignorare la clausola
inline.
--- bye
Newsgroup: it.comp.lang.c++
Titolo: Sviluppare x Linux: C++

Ciao boys / girls
è la prima volta che posto qui. Sto facendo uno stage in azienda e sto
usando ObjectPascal in ambiente RAD, Delphi 5, quindi in sostanza sto
imparando a sviluppare applicazioni x Windows e questo sarà il mio lavoro.
Passiamo ora alla mia vita: sono appassionato di Linux, ho le basi di C e
ShellScripting e vorrei iniziare a sviluppare applicazioni x Linux. Ho dato
un'occhiata a KDevelop, l'ambiente di sviluppo per KDE e mi è sembrato
buono. Vorrei un giudizio da qualcuno + esperto su di esso. 
Tutto questo per dire che: mi piacerebbe partire col C++.. secondo voi
faccio bene a instradarmi con questo o dovrei tenere l'orizzonte + aperto
già da subito. Inoltre: è azzeccato sviluppare x linux in C++ secondo voi,
nel senso: va bene x ogni genere di applicazioni?
Saluti
grazie
-- 
C o n t e
http://digilander.libero.it/Iamyourgod
Per rispondermi togli '_78' dall'indirizzo

 va bene x ogni genere di applicazioni?
Direi di si'. Tieni conto che conoscere anche il C ti aiutera' in quanto
molti progetti sono scritti appunto in C (il Kernel, Gnome, mentre KDE
e' fatto in C++).
Comunque per programmi sotto GNU/Linux e' meglio usare
news://it.comp.os.linux.development. Ciao!
-- 
Andrea Bergia - studente              Linux Registered User #281550

 
# Grazie del consiglio! Lo visiterò subito!
-- 
C o n t e

Newsgroup: it.comp.lang.c++
Titolo: Lo ho comprato. Può andare bene?

Ciao, ho comprato il manuale della  microsoft learn microsoft visual c++
now. Credete che sia un buon libro per iniziare? Io voglio imparare il c++.
Se alcuni di voi con il C++ ci fanno i giochi potete dirmi da quando avete
incominciato quanto ci avete messo?
Vorrei sapere da persone che con questo linguaggio ci fanno i giochi, quanto
si sono sacrificate prima di incominciare magari a fare giochi in 2d. In
definitiva, 2 anni possono bastare?
ringrazio anticipamente e auguro Buon Natale a tutti.
Ciao

 ringrazio anticipamente e auguro Buon Natale a tutti.
Buon Natale :-)
Domenico Barra

 Microsoft Visual C++, e non a programmare in C++ (che è molto diverso).
"ti insegna" ?!?
non so se è quello il libro, ma avevo sentito di un libro che era fatto di
15 tutorial su VC++
tipo: creare una nuova applicazione con MFC AppWizard, premi 2 volte avanti,
sostituisci il titolo con esercizio9, attendi che viene generato il sorgente
cerca questa linea e cambiala con xxx
dal menu build seleziona Build All
premi execute
complimenti, sei una merda di programmatore!
;-)))
--
ciao
..::[xaero]::..

 complimenti, sei una merda di programmatore!
A chi, a me??? (scherzo, ovviamente :-) )
Scherzi a parte, in genere i manuali editi o approvati dalla Microsoft Press
sono completi dal loro punto di vista, ovvero: ti insegnano ad usare bene lo
strumento Microsoft che pubblicizzano (almeno questo lo fanno). Ripeto: un
manuale di "VC++ 6.0" _non_ insegna affatto il C++, ma insegna ad usare uno
strumento basato sul C e che tocca il C++ in qualche occasione :-)
Ciao
Domenico Barra

incominciato quanto ci avete messo?
E'fuori tema chiedere qui come si programmano i videogiochi. Per
questi argomenti c'é it.comp.giochi.sviluppo.
Il Ghenio
WINWORD.EXE - ERRORE DI APPLICAZIONE
l'istruzione a "0x3017ff27"ha fatto riferimento alla
memoria a "0x02a3143c".La memoria non poteva essere 'read'.
Newsgroup: it.comp.lang.c++
Titolo: Pattern factory senza modifica della classe base

Salve a tutti di nuovo.
Sto implementando in un mio programma il pattern factory. Quel che
vorrei ottenere e' pero' evitare di dover modificare la classe base
ogni volta che aggiungo un nuovo tipo.
Insomma la solita funzione della classe "base" che che fa lo switch in
base al parametro passato e restituisce l'implementazione corretta.
Quel che avevo pensato era, nel costruttore delle varie sottoclassi
andare a registrare l'implementazione corrente in una sorta di
registro globale e inserire un puntatore ad una funzione che creasse
poi effetivamente l'istanza della classe...
una roba del tipo
---classederivata.cpp---------------
ClasseDerivata::ClasseDerivata()
{
    registerMe("stringaUnivocaDellaClasse", fun);
}
fun()
{
    return new ClasseDerivata();
}
----------------------------------------------
cosi' che poi la classe factory base, interrogata con una stringa,
lanciasse fun() invece che fare il solito if-else-else.
Insomma semplicemente volevo evitare di modificare il codice della
classe base. Anche perche' le varie implementazioni potrebbero essere
caricate runtime.
Ha senso?
C'e' qualcosa di gia' fatto da cui poter prendere spunto?
Grazie.

.
  bye
	av.

Newsgroup: it.comp.lang.c++
Titolo: Formato rar

Salve
Quancuno potrebbe indicarmi un'indirizzo dove posso trovare un documento sul
tracciato record dei file rar ?
Grazie mille
--
-----------------------------------------------------------------
Dake -->  Formica Diego
Powered by Mandrake 8.1 on a Intel Pentium II machine
-----------------------------------------------------------------

 documento sul tracciato record dei file rar ?
 1. la domanda è totalmente OT in questo NG
 2. prima di chiedere in un NG bisognerebbe comunque darsi un po' da fare
    con motori di ricerca e similia
 3. 
http://www.wotsit.org/download.asp?f=rar202
 
http://www.wotsit.org/download.asp?f=rar_2
Max

tracciato record dei file rar ?
prova qui: 
www.wotsit.org
--
Lawrence Oluyede
rhy...@myself.com

Grazie mille. Scusatemi per l' OT
"Drake" <Dr...@Drake.it> ha scritto nel messaggio
news:14xu8.37335$m41.1...@twister2.libero.it...


 tracciato record dei file rar ?
Questo non e' il ng giusto - prova su it.comp.programmare.win32 o simili
#eno
 -----= Posted via Newsfeed.Com, Uncensored Usenet News =-----
http://www.newsfeed.com
 - The #1 Newsgroup Service in the World!
-----== 90,000 Groups! - 17 Servers! - Unlimited Download! =-----
Newsgroup: it.comp.lang.c++
Titolo: Perchè..... [Template nidificati]

template<typename T>
class list
{
    .....
     template<typename is_greater> void merge(const_iterator begin,
const_iterator end, is_greater pred);
    .....
}
......
template <typename T>
template <typename is_greater>
void list<T>::merge (const_iterator begin, const_iterator end, is_greater
pred)
{.....}
mi dà
error C2059: syntax error : ''template<''
al secondo template.....
ma la sintassi sembra giusta no? L'ho presa pari pari dal Lippman.

 Manca il ;
In verità nel listato c'era. Ho dimenticato di aggiungerlo anche nel post.
Considera che dopo la fine della classe ci sono una decina di definizioni di
metodi prima di arrivare alla linea di codice incriminata. A questa mi hanno
risposto sufficienetemente esaurientemente su comp.lang.c++, e seguendo uno
dei vostri consigli ho utilizzato una funzione template non membro
richiamata inline dal metodo membro incriminato. Un workaround accettabile.

Newsgroup: it.comp.lang.c++
Titolo: Distribuire Applicativi - principiante cerca aiuto

Salve a tutti,
c'e' qualcuno che sa dirmi qual'e' il modo più comodo per
distribuire un Applicativo creato con C++Builder 3 ?
Il file .EXE generato non parte se copiato su un altro Pc
perchè ovviamente non trova i vari file DLL che sono
stati installati del Builder.
In poche parole quello che in Visual Bsic si chiama
Autocomposizione dell'Installazione, dov'e' nel C++ Builder?
Grazie per l'attenzione, nonostante la canicola!
Francesco
gi...@tin.it

...


 wrote in message
7o131l$hg1$2...@aquila.tiscalinet.it...


...

Newsgroup: it.comp.lang.c++
Titolo: Vi scongiuro...

Salve,
   sono uno studente in ING. T.L.C. devo fare il colloquio orale
all'esame di fondamenti 2.
 Chiedo un opinione su un mio ragionamento.
Avrei un dubbio su una questione riguardante le HASH TABLE.
La complessità per la ricerca di un elemento con tale rappresentazione è:
O(Log(n)).
Tale valore si può derivare ragionando sul fatto che nel caso migliore O(1)
l' array degli indici è di dimensione uguale al numero di elementi da
memorizzare  in tabella ,in modo da avere liste con 1 elemento ciascuna, in
tal caso il costo è quello di una assegnazione ,nel caso peggiore invece ho
un array di dimensione 1,  ho praticamente una lista che richiede algoritmi
di ricerca di ordine O(n).
Riassumendo ,nel caso medio ho una complessità che è maggiore di O(1) ma
minore di O(n) quindi unica alternativa è O(Log(n)).
Vorrei sapere se questo ragionamento (ammetto un po' forzato) è valido o
meno.
--
Saluti,
   Leonardo
 e-mail: 
lettieri...@hotmail.com
personal homepage:
 
http://utenti.tripod.it/llettie/index.htm

 wrote in message 7uktm6$odi$1...@nslave1.tin.it...



mmmmh, se non vado errato la complessità media dipende dal tipo di algoritmo
che usi (che può variare a seconda del grado di riempitura della tabella)...

 meno.
Non mi pare che sia così....
Esistono tanti algoritmi che hanno una complessità minore di O(1), massima
O(n) (ma anche di più) e che non hanno complessità media O(log(n)).
Se la tabella hash si espande man mano che ci sono più elementi, si potrebbe
dire che il O(log(n)) è dovuto al fatto che per l'iterazione di ricerca gli
elementi per il confronto sono un numero ristretto...
Puoi fare un esempio per spiegare il tutto... (ti può anche aiutare per
vedere che non è O(n log(n)))
--
| /
| \Byte - Andrea Briganti
E-Mail 
kbyt...@freemail.it
ICQ 40872731

Esistono tanti algoritmi che hanno una complessità minore di O(1),
Minore di O(1)? mi pare difficile!
Paolo
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

 Minore di O(1)? mi pare difficile!
Mi sono sbagliato infatti....
Mi riferivo al caso migliore e peggiore non alla complessità dell'algoritmo
con minore complessità....

Newsgroup: it.comp.lang.c++
Titolo: std::vector di std::map o std::map di std::vector?

devo implementare una classe per una tabella/griglia
gli header della tabella (le celle della prima riga) sono contenuti in
uno std:vector
per le celle della tabella, vorrei un qualcosa che fosse accessibile
nei seguenti modi
GetCell("NomeHeader", NumeroRiga)
oppure
GetCell(NumeroColonna, NumeroRiga)
avevo pensato di memorizzare la griglia in un vector di map (o il
contrario), in modo da poter accedere a tali celle, dall'interno della
classe, in modo simile a
return Cells["NomeHeader"][NumeroRiga]
e implementare l'altro GetCell di conseguenza
1) come è la dichiarazione giusta da usare?
map<string, vector<string> >
oppure
vector<map<string, string> >
2) come riempio tale struttura? cioè, come "carico" la griglia nella
classe?
-- 
]\/[ad]\/[age
"Un Maestro insegue semplicemente la sua visione di Eccellenza in
qualunque cosa sta facendo e lascia agli altri decidere se sta 
lavorando o giocando. A lui sembra sempre di fare entrambe." - Anonimo

 GetCell(NumeroColonna, NumeroRiga)
In questo caso la scelta piu' naturale e':
vector<vector<string> >
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: Il significato della vita in C

Salve tutti!
E' una richiesta un po' strana quella che faccio.
Tempo fa' vidi una routine in C che dava una risposta al significato della
vita e semplicemente comprendeva un return(42) come chiusura della funzione.
Il bello della funzione pero' erano i commenti in testa che spiegavano il
perche' si era giunti a questa approssimazione.
Qualcuno e' in grado di postarla sul NG?
--
Un Grazie in DO maggiore!           AOL Instant Messenger user
-=) Sbaturzio Cantina (=-         remove NOSPAM to reply by e-mail.


Questa che tu chiami "approssimazione" è, senza ombra di dubbio, la
soluzione alla domanda fondamentale!
Per ulteriori dettagli leggiti (e ti garantisco che ne vale veramente la
pena!) la "guida galattica per autostoppisti" di Douglas Adams (credo che
sia un valido diversivo per svagarsi durante la lettura dei "sacri testi"
del C/C++ che vengono spesso suggeriti sul gruppo :-)).
---
Valter Minute
min...@fortech.it
 (the reply address of this message is invalid)
---
Are you looking for a good freeware ScreenSaver? Try FOYD!
http://hotfiles.zdnet.com/cgi-bin/texis/swlib/hotfiles/getit.bin?fcode=000PZ
0
if you want, I can send you the (free) C++ source code.
Newsgroup: it.comp.lang.c++
Titolo: Cosa si puo' mettere in un RES?

Essendo da poco passato al Builder 3.0, mi sono chiesto se č possibile
raggruppare in modo standard (cioč senza crearmi un file con un mio formato)
i vari BMP,ICO,WAV e MID che compongono un mio programma.
Penso che bisogna usare un Resource Editor, che se non sbaglio nel Buider č
l'Image Editor, ma permette di creare un RES dove si possono inserire solo
BMP (max 256 colori), ICO e CUR.
Esiste qualcosa di piů potente per raggruppare anche WAV, MID ed
eventualmente AVI?
--
Ciao, AntoGal
*************************************************
Home Page (area programmatori di VolFtp)
http://www.volftp.vol.it/IT/IT/ITALIANI/galletta
per scaricare un gioco di Dama Italiana.
*************************************************

eventualmente AVI?
Nel tuo qualsiasicosa.RES puoi mettere assolutamente tutto quello che
vuoi, non con un "resource editor" ma semplicemente con un editor di
testo fatto girare sul sorgente del file delle risorse, qualsiasicosa.RC.
Qualunque compilatore di risorse, che trasforma il .RC in .RES, dovrebbe
supportare questo generico costrutto, in una riga di qualsiasicosa.RC:
mionome    miotipo   discardable   "unfile.ext"
Poi, naturalmente, e` il tuo programma ad avere la responsabilita`
di caricarsi correttamente la risorsa, supponendo ad es. che sia
nel suo stesso file EXE, con qualcosa del tipo:
HRSRC hRsrc = FindResource(0, "mionome", "miotipo");
HGLOBAL hGlob = LoadResource(0, hRsrc);
void* pRsrc = LockResource(hGlob);
// e, se ti serve:
int numbytes = SizeofResource(0, hRsrc);
ma attento che l'ultimo numero non e` necessariamente
esatto, puo` essere arrotondato in alto a una qualsiasi
granularita` di allineamento comoda per il sistema -- i file
da caricarsi come risorse devono essere auto-descriventi
quanto a lunghezza esatta, in un modo o nell'altro...!.  Una
possibilita` e` di definire un tuo tipo di risorsa, ad esempio
"ResourceBytes", cui fare corrispondere per ogni risorsa
con nome (e altro tipo non auto-descrivente) l'esatto numero
di byte per il caso che possa servire (ma dovrai immettere
il valore stesso a mano nel file .RC -- o sviluppare il tuo
proprio programmino che prepara un .RC opportuno, non
e` difficile, tutto sommato, trattandosi di un puro file di testo).
Se il tuo programma e` il grado di usare i dati avendoli
mappati in memoria in questo modo, puoi incapsulare
i dati stessi in una risorsa usando questo procedimento,
qualsiasi sia il tipo di file in cui normalmente risiedono.
Alex

Grazie Alex per la risposta!
Pensavo la cosa si dovesse gestire in modo visuale, cioè draggando i files
in un qualche elenco e assegnandoli un ID (dove l'avevo vista sta cosa non
me lo ricordo... forse avrò confuso con qualcos'altro).
Grazie di nuovo :-)


me lo ricordo... forse avrò confuso con qualcos'altro).
Si potra` fare anche cosi` (dipende dalle caratteristiche del
resource-editor che usi -- ce ne sono tanti...!), ma secondo
me puo` essere piu` semplice seguire l'approccio che dicevo,
editando a mano o, meglio, con una piccola utility che non e`
difficile automatizzare, il sorgente qualcosa.rc.
Alex
Newsgroup: it.comp.lang.c++
Titolo: Deinstallazione con InstallShield 5.0

Qualcuno saprebbe darmi indicazioni su come scrivere un programma di
installazione in cui verificare l'esistenza di una versione precedente del
programma ed eventualmente lanciare la disistanllazione, tutto questo con
InstallShield 5.0 professional ?
Ho cercato nella documentazione ma non ho trovato nulla che mi venisse
incontro.
--
------------------------------------------------------------
 Marco Maroni       mailto:
m.ma...@esa-group.it
 Analista/Programmatore
 ESA Software S.p.A.     
http://www.esa-group.it
 via Draghi, 39          tel. +39 541 368.111
 47900 Rimini (ITALY)    fax  +39 541 368.268
------------------------------------------------------------

 incontro.
Non conosco bene InstallShield 5, ma posso darti un'idea su come
disinstallare una precedente versione.
Prima devi controllare l'esistenza di una precedente versione guardando nel
Registry. Qui vi sono vari modi per vedere se vi e' un'applicazione: si
puo' controllare l'esistenza dell'estensione del file predefinito per
quell'applicazione e se a tale estensione e' associato il file o programma
voluto, si puo' vedere nella chiave HKEY_LOCAL_MACHINE\Software se e'
presente il programma voluto (magari scorrendo un po' il "tree" per
controllare anche il numero di versione), oppure si puo' controllare nel
percorso
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall se
e' presente il programma voluto e se e' presente eseguire la stringa
contenuta nella chiave "UninstallString", in questa maniera puoi mandare in
esecuzione il disinstallatore della vecchia versione.
Comunque sia mi pare strano che altri programmi mandino in esecuzione il
disinstallatore di una vecchia versione. E' piu' probabile che la nuova
versione sovrapponga i dati nell'ultimo percorso da me fornito in modo tale
che nel Pannello di Controllo compaia solo una voce del programma voluto, e
non due voci. Inoltre InstallShield controlla la versione di ogni file e
aggiorna solo i file piu' recenti. In questo caso si potrebbe dire ad
InstallShield di eliminare almeno le chiavi del registry in esubero,
dipendenti dalla versione del programma.
Ciao.
-- 
Jo Parrello (
jopa...@tin.it
)
http://space.tin.it/computer/giparrel

Hey Jo tutto ciň č molto interessante... ma, per favore, sapresti dirmi come
faccio a leggere il registro???
Grazie mille in anticipo...
Maurizio 
sec...@secoges.com

 faccio a leggere il registro???
Per capire come funziona il registro faresti meglio prima ad usare l'editor
del registro di configurazione, ovvero eseguire il file REGEDIT.EXE che si
trova nella cartella di Windows.
A livello di API dovresti trovare ampia documentazione nei file di Guida
dell'API di Win32, cioe' in parole povere nel file WIN32.HLP che viene
fornito con tutti gli ambienti di sviluppo. In questo file di Guida cerca
la stringa "registry".

Newsgroup: it.comp.lang.c++
Titolo: plug-in

 
Sto cercando di sviluppare una mia applicazione ma volevo che fosse in grado
di supportare plug-in
Qualcuno mi spiega come si fa a sviluppare un programma con queste
caratteristiche?
Ho cercato su internet ma non ho trovato nulla di esaltante!
Potete aiutarmi????????
Grazie
SAX
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 caratteristiche?
Dovresti spiegare anche che tipo di programma e', cosa fa, cosa intendi 
esattamente per plug-in, e probabilmente postare su un ng dedicato al 
sistema operativo che usi.
-- 
Devaraja (Xdevaraja87^gmail^c0mX)
Linux Registerd User #338167
http://counter.li.org

 caratteristiche?
potresti scrivere il tuo bel programmino in C++...
e i plug-in te li gestisci come script esterni, che
esegui quando necessario...
in internet trovi un sacco di engine di scripting:
lua, angelscript, addirittura potresti usare javascript
(c'e' una implementazione ansi c sul sito di mozilla per
chiamare uno script javascript da codice c++)
oppure la libreria boost comprende una classe per
eseguire script in python...
-- 
Ciao!
Simone.

 grado di supportare plug-in
Non ho mai fatto nulla del genere, ma tra gli articoli del sito
http://www.lunaticsystems.com/
 ce n'era uno che parlava proprio di plugin
in C++, in maniera abbastanza approfondita e simpatica. Mi è piaciuto
molto, dagli un'occhiata!!
HTH,
-- 
[ Andrea Spadaccini - a.k.a. Lupino/Lupin85 - Catania - ICQ#: 91528290 ]
[ GPG ID: 5D41ABF0 - key @ 
pgp.mit.edu
 - Slackware 10.1 w/Linux 2.4.22 ]
[ Linux User # 313388 - MAIL: a.spadaccini(at)catania(dot)linux(dot)it ]
Newsgroup: it.comp.lang.c++
Titolo: chi mi aiuta? Please...

cosa vuol dire quando mi si apre una finestra con caratteri strani con il
titolo Exceptio.h"?(con il messaggio...."uno o più linee sono troppo
lunghe"?)
un esempio di programma in cui mi viene quest'errore...(ma anche altri più
stupidi)
#include <iostream>
#include <string>
using namespace std;
void main()
{
char car1, car2;
cout  << "digita il tuo cognome: ";
cin.get(car1).get(car2);
cout << "il vostro cognome inizia per: " << car1;
cout << car2 <<end1;
cin.ignore(80, '\n');
}

 troppo lunghe"?)
Hai già postato lo stesso identico messaggio due volte. Se nessuno
risponde è perchè probabilmente nessuno riesce a capire di che cosa tu
stia parlando. Che software usi? In che contesto succede?  Durante la
compilazione? Durante il linking? Durante l'esecuzione? Che cosa vuol dire
"caratteri strani"?
Ad ogni modo, il tuo problema riguarda l'impiego di un particolare
strumento o ambiente di sviluppo. L'argomento di questo NG è il linguaggio
C++. Le discussioni che concernono l'installazione, la configurazione e
l'utilizzo di compilatori, IDE o librerie devono essere condotte nei
newsgroup appropriati per la piattaforma interessata.
Per farla breve, se hai un problema con un compilatore per Windows,
spostati su it.comp.programmare.win32, non senza aver prima consultato le
risorse dedicate a quel compilatore (mailing-list, manuali, siti Web).
Max

 troppo lunghe"?)
Hai già postato la domanda identica, se non l'hai capito devi spiegare 
meglio quello che ti succede (come, dove, quando e con cosa) e non 
reiterare la stessa identica domanda all'infinito. 
Naturalmente se ti interessa la risposta.
Newsgroup: it.comp.lang.c++
Titolo: Interfacce in C++

Devo tradurre da C++ a Java la seguente semplice struttura:
Ho in Java un oggetto che al suo interno ha un attributo di tipo
Interfaccia :
Interface In
{ /*....*/  }
Class X implements In
{ /*...*/ }
E nel main ad un certo punto ho:
// ....
Cl c = new Cl(new X());
//  ....
Class Cl 
{
    In in;
 
    Cl( In i) { in = i; }
// ....
}
Poiche' non sono molto esperto in C++, volevo chiedere se questo modo di
implementare le interfacce e' in generale corretto:
Class In
{ /* astratta */ }
Class X : In
{  /*...*/ }
Class Cl
{
  public:
    In *in;
    Cl(In *i) { in = i; }
    ~Cl() {delete in;}
}
e nel main 
// ....
Cl c = new Cl(static_cast < In* > new X());
// ....
vi sono altri modi?
Grazie mille
Matteo

 vi sono altri modi?
Si`.  Ad esempio, e` normalmente meglio avere un auto_ptr
piuttosto che un nudo puntatore:
    class Cl
    {
    public:
        std::auto_ptr<In> in;
        Cl(In* i): in(i) {}
    };
in questo modo non occorre il distruttore esplicito per Cl.
Sarebbe inoltre probabilmente meglio avere In (come e`
regola per qualsiasi membro-dati) come privato, ed esporlo
in modo controllato attraverso un metodo, tipo:
    class Cl
    {
        std::auto_ptr<In> in;
    public:
        Cl(In* i): in(i) {}
        In* getIn() { return in.get(); }
    };
Puoi anche scegliere di esporre in come reference invece
che come puntatore.  Questo e` in parte questione di
stile.  Un reference e` immutabile e non puo` mai essere
nullo; un puntatore e` mutabile e puo` essere nullo (ed
eventualmente soggetto ad aritmetica d'indirizzi).  Se le
capacita` extra del puntatore non ti servono, la reference
puo` essere meglio.
Un'altra possibilita` e` far si` che la stessa Cl "esponga"
le OPERAZIONI di In, delegando attraverso l'operatore
freccetta:
    class Cl
    {
        std::auto_ptr<In> in;
    public:
        Cl(In* i): in(i) {}
        In* operator->() { return in.get(); }
    };
Cosi`, se In contiene un metodo Pippo(), e c e` di
class Cl, puoi chiamare c->Pippo() direttamente.
Bisogna poi vedere se occorre proprio che main costruisca
il Cl* c con new.  Ricorda che mentre in Java devi sempre
usare new, in C++ hai altre opzioni; se l'oggetto in questione
non deve sopravvivere a main (esigenza rara!), meglio di
solito costruirlo come automatico:
    Cl c(new X);
Insomma, in generale, in C++ hai tanti modi di fare una
data cosa.  Fai MOLTO bene a chiedere qui, sia per vedere
quali sono, sia per avere consigli su quale dei tanti usare
per una certa, data esigenza.
Alex
Newsgroup: it.comp.lang.c++
Titolo: [OT] Cercasi programma per diagrammi a blocchi

Salve, scusate l'OT, ma sto cercando (urgente!!) un programma per la
generazione di diagrammi a blocchi (non necessariamente diagrammi di
flusso) per le illustrazioni della mia tesina di maturita`.
Qualcosa che mi permetta di generare facilmente immagini di grafi,
strutture logiche e fisiche, alberi e reti neurali.
Possibilmente Free o Shareware, scaricabile dalla rete o sul CD di
qualche rivista.
Grazie
-- 
Gargamella alias Massimo Lauria
"Non e` bello cio` che e` bello, ma e` bello cio` che piace... a me!"
remove *dinkyisland* from address to mail me

qualche rivista.
Non so se ti puo` andar bene, ma nel numero di maggio di 
inter.net
c'e` SmartDraw (registrato) in regalo.
La rivista costa 8000.
-- 
Roberto Gerola
Email: 
robert...@penguinpowered.com
WWW: 
http://www.penguinpowered.com/~The_Cpp_Compass

...


Newsgroup: it.comp.lang.c++
Titolo: AIUTO BORLAND 3.0

Salve......
un amico mi ha passato il Borland C++ 3.0 compattato in file Arj.
Ho scompattato tutto ma non riesco a ricostruire le directory:qualcuno mi
potrebbe segnalare le directory con i relativi file?
Grazie

potrebbe segnalare le directory con i relativi file?
Io ho installato il 3.1, sicuramente cambia qualcosa, ma in linea di massima
potrebbe esserti utile.
P.S.: hai scompattato il file ARJ con l'opzione -x (mi pare che -e non
ricostruisca le dir). Oppure non fai prima a farti re-arjare il programma?
Non dovrebbero essere più di 10 dischi.
--
Ciao, AntoGal
*************************************************
Home Page (area programmatori di VolFtp)
http://www.volftp.vol.it/IT/IT/ITALIANI/galletta
per scaricare un gioco di Dama Italiana.
*************************************************

...
Ho anche io la versione 3.1.......è stato un mio errore.Ed ho fatto l'errore
di scompattare con l'opzione -e..........adesso cancello tutto e provo a
scompattare con l'opzione -x come mi hai consigliato tu.
Ciao e grazie!

Newsgroup: it.comp.lang.c++
Titolo: MFC on the WEB

Ciao a tutti,
Qualcuno sa dirmi dove posso trovare materiale per imparare la
programmazione con le MFC di Windows sul WEB???
Dimenticavo utilizzo Visual C++ 5.00
Ringrazio anticipatamente.



Ti posso consigliare per iniziare -Inside Visual C++- di David J.Kruglinski
(Microsoft Press - Quarta edizione) la parte quarta ti spiega un po' di
robetta (un centinaio di pagine). Illustra come fare un browser e come fare
un applett in C++. Utilizza CHttpBlokingSocket  per il browser e, più
bellino, mostra come gestire la versione semplificata dell'e-com di una
pizzeria a domicilio con l'ISAPI (CHttpServer ,CHttpServerContext e
CHtmlStream) per poi passare ai controlli ActiveX.
Su tutto questo ci sono esempi nel CD del VC.
 Il tutto e` abbastanza carino ma personalmente ti consiglio di dare un
occhio alle CGI se non le hai gia` prese in considerazione  : lo standard
che fino ad ora ha tenuto in vita le pagine web dove e` richiesta
elaborazione server - side.
Con poca fatica puoi crearti delle librerie in C++ che fanno veramente di
tutto e non hai bisogno di pagare per avere la documentazione.
\ |
 \|ix

www.codeguru.com
Newsgroup: it.comp.lang.c++
Titolo: Domanda sui SOCKET

Buongiorno, vorrei porvi una domandina:
Come si fa a settare il timeout al metodo accept?
Cioč a sbloccarlo dopo un po'?
ciao Ashesh

 Cioč a sbloccarlo dopo un po'?
Non sono sicuro dell'on-topic...  Comunque, ecco qua (in ambiente,
ovviamente, Unix).
Normalmente chi chiama accept e' un server, che rimane indefinitamente
ad aspettare un client ed esegue un fork&exec per ogni connessione; e'
alquanto inusuale "sbloccare" accept.
Se hai proprio bisogno di uscire da accept, dichiara il socket
non-blocking; se non ci sono clients nella lista di attesa, accept
ritornera' EAGAIN.
-- 
Maurizio Loreti  - Linux Is Not UniX -  
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: Cannot call function without object

Uso il DJGPP, ma sono alle prime armi con il c++.
Ho definito come public nella classe Frame la funzione image_pub, che
dovrebbe restituirmi il valore della cella della matrice 3D
image_priv:
class Frame {
public:
  typedef vector <vector <vector <int> > > image;
  int image_pub (int index1, int index2, int index3) const;
private:
  image image_priv;
  };
inline int Frame::image_pub (int index1, int index2, int index3) const
  {
  return image_priv[index1][index2][index3];
  };
Quando pero' nel programma invoco la funzione image_pub:
int value = Frame::image_pub (0,0,0);
Mi da' l'errore "cannot call member function without object"
L'errore  (o gli errori) che commetto deve essere molto banale (che
non vuol dire che non siano gravi, ma che sara' sicuramente banale per
chi conosce il c++), ma ringrazio per la pazienza chiunque possa
rispondermi.
Grazie.
Claudio Mantelli
Remove SPAMMERSF*CK from my email address to reply

Non puoi chiamare un metodo non static senza specificare la
istanza della classe cui deve riferire (ad esempio con la notazione
del punto...   Obj.Metodo()).... e` come invocare una
normale funzione senza fornirle un parametro essenziale.
Se non riesci a capire cio` che ti ho detto, faresti bene a leggere
un buon libro sul C++ (vedi faq), guardati anche il mio tutorial.
Paolo
--------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
--------------------------------------------------

 Mi da' l'errore "cannot call member function without object"
Se vuoi chiamare il metodo image_pub() senza passare per un'istanza
allora devi definirlo statico:
static int image_pub (int index1, int index2, int index3) const;
EMG

un buon libro sul C++ (vedi faq), guardati anche il mio tutorial.
Tutto chiaro, ti ringrazio. Come libro uso lo Stroustrup, che poi e'
il nosto libro di riferimento al corso di Ingegneria del Software
(Politecnico di Torino), ma ogni tanto si fa un po' fatica a seguirne
il filo.
Grazie ancora.


il filo.
Non lo ritengo un libro adatto per studiare il C++, e` piu` un reference
da consultare quando si ha un dubbio o non si ricorda qualcosa.
E` meglio come lettura successiva quando gia` si ha un minimo
di padronanza del linguaggio.

Newsgroup: it.comp.lang.c++
Titolo: costruire una classe

ragazzi ho bisogno di urgente aiuto domani ho il compito...
ho bisogno di costruire una classe (me la invento adesso supponiamo una
classe di stringhe)
questa classe deve avere un metodo getlenght che mi dice quando la richiamo
la lunghezza della stringa che gli passo in input
deve inoltre avere una funzione mycopy che copia dal carattere di pos. x al
carattere di pos. y i caratteri della stringa e me li inserisce in un altra
stringa (definita come char arr[256])
questo giusto per fare un esempio... chi mi aiuta?
vi ringrazio in anticipo e vi farò sapere ke voto prendo (se non mi aiutate
sono sicuro di prendere 3...)
grazie

 vi ringrazio in anticipo e vi far?sapere ke voto prendo (se non mi aiutate

Newsgroup: it.comp.lang.c++
Titolo: Aiuto ! devo aprire delle bitmap a 256 colori

Ho faticosamente imparato ad aprire i file .bmp (il fatto che ci sono i54
byte di header, il fatto che i byte veri e propri sono allineati a multipli
di 4), ma mi chiedo tra le altre cose:
1)Come è strutturato l'header?
2)Come si legge la palette?
3)... avete qualche cosa di già fatto a tale scopo ?
Potete scrivermi anche direttamente al mio indirizzo :
-- 
Federico Castellari
E-Mail :  
fede7...@iol.it

3)... avete qualche cosa di già fatto a tale scopo ?
tutte le info che chiedi sono disponibili su tutti i manuali dell'SDK
di windows a partire dalla versione 3.1, basta cercare un po' :)
Se poi hai il Visual C++ ci sono anche un paio di esempi che fanno
proprio quanto chiedi.
Ciao
Gianpaolo Bottin
- The truth is out there -

3)... avete qualche cosa di già fatto a tale scopo ?
guarda la libreria Allegro 3.0 ha funzioni per leggere i bmp scritte
in C per il djgpp. dovresti trovare queste info anche nel SDK di win.
--
[ranger, email: 
ran...@queen.it
]
ICQ# 6585343
Newsgroup: it.comp.lang.c++
Titolo: Interfaccia cd

Salve avrei bisogno di un consiglio:
devo sviluppare un interfaccia che parta all'autorun di cd.
I requisiti sono che giri da win95 in poi....e nn deve essere installato
nulla sul sistema.
Come la potrei sviluppare e con quale ide?
Verrà una cosa alla twilight, nel senso che se clikko su un bottone
corrispondente ad esempio ad un immagine mi chieda di inserire il cd
opportuno come indice usero' un file xml.
Spero di essere stato chiaro, e ringrazio anticipatamente :).
Ciao,
        Renato
---
The question of whether a computer can think
is no more interesting than the question of whether a submarine can swim.
Prof. Edsger W. Dijkstra

 devo sviluppare un interfaccia che parta all'autorun di cd.
it.comp.programmare.win32
-- 
Mattia Belletti - Undergraduate student @ 
cs.unibo.it
ICQ: 33292311   - email: 
mbel...@cs.unibo.it
IRC: BluShine   - site(s): 
http://cs.unibo.it/~mbellett
Linux registered user 299762 @ Linux registered machine 213003

Newsgroup: it.comp.lang.c++
Titolo: dynamic cast

Che cosa significano questi comandi?
dynamic_cast<TDBMemo*>(ActiveControl)
dynamic_cast<TComponent*>(Sender)
grazie

 dynamic_cast<TComponent*>(Sender)
il dynamic_cast fa una cifra di cose, ma fondamentalmente converte un 
tipo in un altro, purche' siano compatibili, tramite verifica con RTTI, 
e nel caso solleva l'eccezione bad_cast, mentre con puntatori di tipi 
incomaptibili ritorna 0
per maggiori informazioni, leggiti lo standard.


o un qualunque libro "decente" sul C++. Lo standard non e' semplice da
leggere. Ed e' in inglese.
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

incomaptibili ritorna 0
Veramente "The C++ Programming Language" (15.4.1) dice che
dynamic_cast con *puntatori* non solleva eccezioni ma torna 0
in caso di conversione fallita; dynamic_cast con *reference*
puo' generare bad_cast se la conversione non ha senso.
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff

 puo' generare bad_cast se la conversione non ha senso.
emmm, e io che ho skritto ?-) 
siamo ben pignoli, eh ;)
non ho messo reference, ho messo tipi, va be'. Il succo c'era. 
PS: conosco la differenza tra tipi e reference, non c'e bisogno che me 
la spieghi :)

 siamo ben pignoli, eh ;)
Chiedo scusa... rileggendo attentamente in effetti e'
quello che dici (a parte il non parlare espressamente
di reference).
Andrea
--
----------------------------------------------------------------
 <\___/>  Andrea        email: agriff at tin dot it
 / . . \  "6502"          irc: _6502_@EFNET#italia
(  (")  ) Griffini   homepage: 
http://www.netservers.com/~agriff
Sent via Deja.com
http://www.deja.com/