mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: Usare le OpenGL

Salve
Vorrei iniziare a sviluppare con le OpenGL utilizzando MS Visual C 6.0 e
vorrei chiedere alcune cose.
Oltre al compilatore di cosa avrei bisognio? Esiste un'SDK ? Probabilmente
si. (dove posso scaricarlo?)
Ma come funzionano? L'SDK sono generali o sono loro che danno accellerazione
per una determinata scheda video ?
Grazie.
-----------------------------------------------------------------

per una determinata scheda video ?
L'SDK sono gli headers sopracitati...non hai un SDK
mastodontico (ma infinitamente utile) come quello delle
DirectX e forse questo è un altro punto a sfavore..perlomeno
te ne accorgerai quando avrai fatto un pò di
esperienza...dato che devi appoggiarti a librerie esterne
per fare parecchie cose. Riguardo alla questione della
scheda video dipende molto dai drivers della scheda
stessa...ma se hai un qualsiasi acceleratore 3D che supporta
OpenGL non vi sono problemi...
ps. sei OT :)
--
Lawrence Oluyede
rhy...@myself.com


perchè pecca?
ciao

perchè pecca?
beh come risponderti...io trovo il C++ più "sicuro" come
linguaggio....ma ripeto...non è un problema
--
Lawrence Oluyede
rhy...@myself.com

Newsgroup: it.comp.lang.c++
Titolo: BCBuilder 3 e sniffer

Sto cercando di sviluppare un analizzatore di pacchetti, qualcosa
che stia tra un firewall ed uno sniffer; uso il Borland builder 3,
come faccio ad intercettare questi maledetti pacchetti? comincio a
pensare che non esistano!
Accetto qualsiasi suggerimento
Davide

 wrote in message
8d7coc$7s8$1...@news.tin.it...


 la tua scheda ethernet può funzionare in 2 modalità:
[cut]

 Davide
-- 
Alessio Gordini
Comm2000 Spa
Via Leopardi, 9
Milano
Italy

Newsgroup: it.comp.lang.c++
Titolo: Mi consigliate dei link?

Mi sapete consigliare qualche link che mi dia le seguenti informazioni?
 1- Link che spieghino, con relativi esempi, come utilizzare     gli 
alberiordinati ed alberi binari.
 2- Link che mi forniscano il codice per eseguire     moltiplicazioni e 
divisioni con numeri binari.
Nicola 

 alberiordinati ed alberi binari.
http://tinyurl.com/4zqe4
Tommy


Grazie pe avermi risposto... ma mi rimanda ad una pagina per acquistare un 
libro di algortmi e strutture dati 

 > 
http://tinyurl.com/4zqe4

lo so, e' uno dei libri migliori in commercio in materia e ti assicuro che
gli alberi li spiega benissimo.
Links, non lo so, ce ne sono ma e' difficile tra i tanti orribili tirare
fuori quei pochi buoni. In Italiano? Nah, improbabile.
Il libro del link credo esista anche in versione italiana invece.
Un link a caso: 
http://www.cprogramming.com/tutorial/lesson18.html
ma attento ad imparare cose da persone che non sai chi sono... potrebbero
insegnarti cose sbagliate, specialmente se non hai abbastanza conoscenza in
materia per poter capire se cio' che dicono e' corretto o meno.
Tommy
Newsgroup: it.comp.lang.c++
Titolo: domanda stupida: come definire dei metodi "globali"

Salve,
una breve domanda per poter scrivere un po meglio il codice:
Al momento ho alcuni metodi generali (tipo concatenazioni di stringhe e
numeri e altro) che uso in diverse classi.
Ovviamente non mi va di duplicare il codice, ache perche' (e mi e' gia
successo, se dvo modificarlo diventa un casino).
Volevo quindi rendere questi metodi utilizzabili da tutte le classi
definendoli una sola volta, come fare?
(so che la domanda e' banale e, penso, dovrei creare metodi statici, ma al
momento sono all'estero e non ho libri su cui cercare)
Massimo

 definendoli una sola volta, come fare?
[cut]
non ne sono sicuro ma credo che potresti utilizzare
l'ereditarieta'
potresti mettere i metodi globali in una classe "mamma"
cosi' tutte le classi che derivano da quella
ereditano anche i metodi
almeno credo ...
ciao
cd10191

 almeno credo ...
Grazie, ma dovrebbe esserci un metodo piu' semplice.
Se usassi l'ereditarieta' dovrei, intatnto fare cambi sostanziali al codice,
e sorpattutto aggiungere un livello di dipendenza sostanzialmente inutile e
poco efficiente in termini di prestazioni.
Massimo

...

Infatti, trattandosi per fortuna di C++ e non di Java, il metodo piu'
semplice c'e', ed e' quello di creare funzioni libere, ovvero che non
sono membri di nessuna classe.
Ciao,
Nicola

 poco efficiente in termini di prestazioni.
Se invece queste funzioni devono essere generiche rispetto ai tipi su
cui operano puoi usare i template.
Ciao,
Nicola

Nicola Musatti wrote:

Per capire bene,
al momento ho un file: config.h che contiene definite tutte
le costanti della simulazione, parametri e macro varie, ho provato a
inserire li il metodo, ma ovviamente mi dice che non sono definite le
librerie.
Quindi dovrei creare un config.cpp (ad esempio) e inserire i metodi senza
nessuna classe? Come verrebbero poi richiamati? con ::metodo()?
Massimo

 nessuna classe? Come verrebbero poi richiamati? con ::metodo()?
Premessa: in C++ generalmente non si parla di metodi, si parla di
funzioni, che possono essere membri di classi oppure libere. Le
funzioni libere possono essere messe ovunque possono essere messe le
funzioni membro, salvo che all'interno delle definizioni di classi. Ad
esempio:
// f.h
int f();
// f.cpp
int f()
{
  return 5;
}
Per chiamare una funzione libera non e' necessario specificare i doppi
due punti (i namespace non te li spiego, ma ti conviene studiarteli da
qualche parte).
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: Come funziona il parser del vostro compilatore C++ preferito?

Salve a tutti!
Forse la domanda apparirà banale o stupida, ma sarei curioso di sapere
come funziona la parte dedicata al parsing di un generico compilatore
C++, ed in particolar modo sapere se le stringhe di cui deve
verificare la sintassi (cioé i programmi) vengono letti da sinistra a
destra oppure da destra a sinistra...
In generale, a quanto ne so io, dato un linguaggio generato da una
grammatica context-free, si cerca di rendere tale grammatica di tipo
LL(1) in modo da poter costruire un PDA deterministico che possa
fungere da riconoscitore delle frasi di quel linguaggio. Come si
"comporta" a tale proposito la grammatica del C++?
Esistono compilatori C++ il cui componente parser legge i programmi da
sinistra a destra, e magari altri compilatori in cui il parser legge i
programmi da destra a sinistra? E cosa cambia effettivamente nella
gestione della complessità della grammatica?
Grazie mille,
Giulio.

 "comporta" a tale proposito la grammatica del C++?
La grammatica del C++ *non* e' context free. Ad es:
a * b;
A seconda di cos'e' "a" questa e' una moltiplicazione o la dichiarazione
di un puntatore.
Ciao,
Nicola

Newsgroup: it.comp.lang.c++
Titolo: Ascii to Hex

Ma esiste una funzione in C o una classa in C++ che mi consenta di
convertire una stringa (es:"12B79C") direttamente in Hex ?
Grazie per l'attenzione e per le eventuali risposte!!!

 convertire una stringa (es:"12B79C") direttamente in Hex ?
Le funzioni standard C (presenti ovviamente anche in
standard C++) che lo fanno sono strtol e strtoul; esse
prendono un argomento "base" cui passerai, ovvio, 16.
Alex

 convertire una stringa (es:"12B79C") direttamente in Hex ?
Cosa vuoi fare esattamente?
EMG

Newsgroup: it.comp.lang.c++
Titolo: Specializzazione costruttore di classe template

come si può specializzare il costruttore di una classe template, 
o in alternativa una funzione init() chiamata dal costruttore?
template<int Z> class Esempio
{
public:
	Esempio();
	// ....
 
private:
	int a, b;
	float c;
};
// specializzazione per Z = 1
template<> ?? 
Esempio()
{
	a = 10;
	b = 16;
	c = 5.5;
}
// specializzazione per Z = 2
template<> ?? 
Esempio()
{
	a = 12;
	b = 13;
	c = -8.5;
}
// ecc. ....
grazie.
Sergio
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 o in alternativa una funzione init() chiamata dal costruttore?
template<int Z> class Esempio
{
public:
Esempio();
// ....
private:
int a, b;
float c;
};
// specializzazione per Z = 1
template <> class Esempio<1>
{
public:
Esempio(): a( 10 ), b( 16 ), c( 5.5 ){};
private:
int a, b;
float c;
};
// specializzazione per Z = 2
template <> class Esempio<2>
{
public:
Esempio(): a( 12 ), b( 13 ), c( -8.5 ){};
private:
int a, b;
float c;
};
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: Copiare un array su un altro

La domanda è abbastanza newbie, spero però qualcuno risponda...
Io ho due matrici, una chiamata "cell" e un'altra di appoggio su cui 
faccio dei calcoli di aggiornamento della prima. Però finito
l'aggiornamento dovrei fare diventare la matrice di appoggio (cellApp)
la matrice originale (cell). Le matrici sono 
dichiarate come: 
cell = new int[dim * dim];      
cellApp = new int[dim * dim];
Ora non vorrei copiare elemento ad elemento cellApp su cell, come posso
fare? 
Posso fare ad esempio che cell punterà al secondo array ed il secondo
punterà 
ad uno nuovo? 
Tipo: 
delete cell;
cell = &cellApp;
cellApp = new int[dim * dim];
o qualcosa del genere? 
grazie per l'attenzione :)
-- 
Kwisatz

 cellApp = new int[dim * dim];
Basta usare la memcpy per copiare l'intero array:
memcpy (cell, cellApp, sizeof (int) * dim * dim);
Newsgroup: it.comp.lang.c++
Titolo: Manuale per C++

Vorrei inoltre che qualcuno mi consigliasse qualche buon manuale per C++.
	Io mi sono trovato abbastanza bene con 'C++', di Schildt,
             Ed. Mc Graw-Hill.
	Se poi programmi in Visual C++ allora ci sono i due volumi
             'Inside Visual C++', ovviamente in italiano, costano 
	qualcosa come 110.000 lire, pero' sono fatti davvero bene.
	Buon lavoro.
	Bye
	Enrico

Ruggiero Guida (
gu...@ba.dada.it
) wrote:
: Possiedo un Pc e  vorrei imparare a programmare in C++ .
: Innazitutto vorrei sapere se mi conviene prima approfondire la conoscenza
: del C .
Lo sconsiglio, sebbene il C++ e il C siano parenti stretti il modo di
programmare con l'uno e` molto diverso da quello di programmare col secondo.
Imparando prima il C acquisiresti uno stile di programmazione tipico dei
linguaggi procedurali che potresti utilizzare anche con il C++ (in fondo il
C++ supporta vari paradigmi di programmazione), tuttavia tipicamente
in C++ si usa il paradigma OOP oppure quello piu` recente della
programmazione generica che poco hanno a che vedere con il paradigma
procedurale.
Ho conosciuto diverse persone che hanno imparato il C++ dopo il C e che
per via delle loro abitudini non riescono ad utilizzare il C++ diversamente
dal C. Comunque questo non vuol dire che chi impara prima il C non possa poi
imparare bene il C++...
: Vorrei inoltre che qualcuno mi consigliasse qualche buon manuale per C++.
"Programmare in C++" di Bruce Eckel, edito da McGrawHill
va benissimo per iniziare, soprattutto perche non e` legato ad un particolare
compilatore, parla solo del linguaggio (anche se non in tutti i suoi aspetti,
manca un capitolo sulle eccezioni!).
Paolo

 conoscenza del C .
No, non e' necessario. Pero' devi scegliere un buon libro sul C++,
altrimenti fai molta fatica. Io ti suggerisco per iniziare Guida al C++,
McGraw-Hill. Abbastanza veloce da leggere, copre tutto quello che c'e'
da sapere per iniziare ed e' molto chiaro. Dopo devi decidere quale
piattaforma vuoi usare. Se decidi per Win95/NT ti suggerisco il
Petzold/Yao Programmare in Windows 95 -M$ Pre$$,Jackson-e di seguito
Programmazione Avanzata in Windows di Jeffrey Richter -M$
Pre$$,Mondadori-.
-- 
Gianni Rondinini, programmer and designer at Pierre s.n.c.
e-mail: 
pie...@mail.asianet.it
homepage: 
http://www.geocities.com/SiliconValley/park/7666
Red Hat Linux 4.1 user since 6/16/97
Windows NT 4.0 Server user since 6/27/97
If a railstation is a place where trains stop, what is a workstation?

 procedurale.
Sono del tutto d'accordo: impara direttamente da C++, senza passare per il
C.Queste domande appaiono spesso nel gruppo - perche' non facciamo una FAQ?
Ovviamente, si raccoglierebbero *tutti* i pareri :), anche quelli sbagliati ;-)
CS
--
dr. Cristiano Sadun - Software Engineering and Consulting
***********Remove NOSPAM from address to reply***********
*********************************************************
"God is Real - unless declared Integer"
Newsgroup: it.comp.lang.c++
Titolo: Nuovo sito e ricerca collaborazione!

Salve a tutti!
Vi disturbo solo un minuto.Ho messo online da un mesetto un sito
(
www.seriomanontroppo.it
) dove, dal nome capirete, si trattano molti
argomenti seriamente e altri un pò meno.
Ho messo in piedi già alcune sezioni (sport,musica,cinema, musica
classica) in cui scrivono persone appassionate dell'argomento con
competenza e passione. In altre sezioni cerco disperatamente qualcuno
che abbia voglia di scrivere qualche recensione/articolo su temi vari
che vi appassionano. In fin dei conti si tratta di una recensione (non
lunga ovviamente) ogni settimana/10 giorni..quindi piccolissimo
impegno direi!
Siamo in poco tempo già arrivati a quasi 60 utenti iscritti e vorrei
crescere molto ma ho bisogno di collaboratori che hanno molta passione
in quello che scrivono.
Se volete contattatemi : 
gianni...@gmail.com
Vi ringrazio solo per la pazienza.
www.seriomanontroppo.it

Ciao,
Questo newsgroup si occupa del linguaggio di programmazione C++. Per
questo non e' il posto piu' adatto per porre domande come la tua. Ti
invito a cercare un gruppo il cui argomento sia piu' rispondente alle
tue esigenze. Avrai maggior probabilita' di risolvere il tuo problema
ed eviterai perdite di tempo a chi consulta it.comp.lang.c++ .
Grazie,
Nicola Musatti

Newsgroup: it.comp.lang.c++
Titolo: Problemi tra GCC 2.91.66 e 2.95.2 !!!

Salve,
ho creato una libreria col GCC versione 2.91.66.
Uno dei miei clienti utilizza perň la versione 2.95.2 e da:
Symbol `__vt_12strstreambuf' has different size in shared
object, consider re-linking
Symbol `__vt_13strstreambase.3ios' has different size in shared
object, consider re-linking
Dovrei linkare la libreria con la nuova versione del GCC ??? Se sě
rimarrebbe cmq compatibile all'indietro ???
Grazie,
Ciao Lvc@





, "Lvc@"
<l.ga...@tin.it.removemeee> ha scritto:

Se l'oggetto ha una dimensione differente dalle librerie con cui e' stato
compilato non e' compatibile, devi ricompilare il tutto per il nuovo
compilatore, e cmq non rimarrebbe compatibile all'indietro!
Solitamente, le lib, si ricompilano da macchina a macchina (!)
-- 
Wave++, member of EventOrizon software
http://members.xoom.it/wavexx
Newsgroup: it.comp.lang.c++
Titolo: Sendkeys

Salve a tutti, sono nuovo sia del news, ke della programmazione in c++!
Io vengo dalle basi del visual basic, nel quale avevo un comando 
stupidissimo, il "Sendkeys"
Ora, io ho cercato su google, ma più giravo, meno ci capivo...
Io il c++ lo studio a scuola, e ci hanno detto di usare come compilatore 
"Dev-c++"...E' buono?
Io volevo fare una cosa come in VB, dove scrivendo
Sendkeys "Ciao"
Mi mandava la parola "Ciao" all'applicazione in focus sullo schermo...
C'è un modo, per fare questo? Grazie a tutti, e scusate se ho sbagliato 
qualcosa... :( 

"Dev-c++"...E' buono?
Dev C++ non è un compilatore, ma un IDE basato sul MinGW,
un'estensione di gcc per Windows.  Il gcc è un ottimo compilatore, ma
Dev C++ non integra bene il gdb e il debug generalmente è problematico
(il che, per un uso professionale, lo rende praticamente
inutilizzabile).  Per il resto va bene.
Anche per ciò che riguarda Dev C++ in particolare, devi rivolgerti al
ng di cui sopra.

Newsgroup: it.comp.lang.c++
Titolo: export di typedef in VisualC++

Salve,
ho una classe definita come un typedef della string STL:
#include <string>
using namespace std;
typedef string myString;
Nella mia dll uso sempre myString invece che string. Quando compilo la DLL
tutto OK, ma se un applicazione client linka la mia DLL non risolve i metodi
della string !!! (come operator+(), ecc.).
Come faccio ??? Non posso esportare questo typedef ?
Nel Borland C++ Builder 4 non ci sono problemi xchè evidentemente l'app.
client usa il typedef locale di STL string...
Soluzioni ???
Grazie, ciao Lvca.

della string !!! (come operator+(), ecc.).
In che linguaggio e` scritta l'applicazione client? Se non e` scritta in
C++, ti sei ricordato dei problemi relativi al name mangling ed al
passaggio di this?
Paolo
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

 wrote in message
news:388d9d40...@news.tiscalinet.it...


utilizzava era sempre in VisualC++ !!!
Non saprei che dire... non ho sufficienti indicazioni.
Paolo
xpost e followup su it.comp.programmare.win32


Newsgroup: it.comp.lang.c++
Titolo: Fine linea (neofita)

Come faccio a dire di leggere stringhe da un file fino a fine riga e non
fino ad eof.
io avevo pensato di aquisire l'intera riga in una stringa e poi analizzare
sottostringhe fino a fine stringa (che tra l'altro non ho ancora visto se si
può fare).
cmq qualcuno conosce un modo " più pulito" per farlo.
un esempietto sarebbe utile.
Grazie a tutti del Ng.
max.
P.s.: per chi avesse letto gli altri miei post sono riuscito a risolvere
tutto.Grazie a tutti ancora per la disponibilità.

 un esempietto sarebbe utile.
std::ifstream file("pippo.txt");
std::string riga;
std::getline(file,riga);
Con il codice qui sopra apri un file in lettura di nome "pippo.txt" e
assegni la prima riga alla stringa riga. Ovviamente puoi inserire il tutto
in un ciclo per leggere di volta in volta le varie righe del file.

Tipo:
std::ifstream file("pippo.txt");
std::string riga;
while(file != EOF)
{
    std::getline(file,riga);
}
Newsgroup: it.comp.lang.c++
Titolo: C++ Report & FAQ

Dove posso trovare il documento ufficiale sulla sintassi e la semantica del
C++?
Dove si trovano le FAQ sul C++?
Grazie

 Dove si trovano le FAQ sul C++?
Nel gruppo news.answers, che congloba comp.answers.

Newsgroup: it.comp.lang.c++
Titolo: una guida per visual c++?

ho cercato parecchio, ma non ho travato na rete una guida al VISUAL
c++, solo c++ in genere.
Possibile che ha tutti sembri facile ed intuitivo l'utilizzo dello
strumento di svilupppo M$ ?
mandatemi un indirizzo please

puoi trovare qualcosa su 
www.programmazione.it
 in particolare linguaggi c++.
Alberto

Newsgroup: it.comp.lang.c++
Titolo: sorgenti C++

Conoscete un sito dove scaricare sorgenti di c++, funzionanti...
Cercavo qualcosa sulle liste, sulle pile e sugli alberi..
Grazie mille dell'aiuto..

 wrote in message
H7qM8.22839$K4.5...@twister2.libero.it...


 Grazie mille dell'aiuto..
di nulla
ciao
--
Gerolamo

 ha scritto nel messaggio
news:u6LM8.27139$K4.6...@twister2.libero.it...


 come riesco a visualizzare quelle due librerie?
Le cerchi tra le librerie del tuo compilatore
per esempio nel borland c++ 5.6 sono nella cartella:
\Borland\CBuilder6\Include\Stlport\
tipicamente i file si chiameranno "list" o "list.cpp" o
"list.h" e così anche per lo stack, ma questo dipende
dalla particolare implementazione.
A quel punto le apri con un normale editor di testi.
P.S.
Il quoting!
(ovvero rispondi SOTTO al messaggio a cui rispondi,
tagliando le parti inutili)
--
Gerolamo

 interesserebbe anche a me...
probabilmente l'implementazione di std::set e` quello che fa per te: in 
genere e` implementato come un albero binario red-black.
ciao Anto
-- 
Antonio Cuni, 20 anni, studente
Brainbench C++ Master: 4.73, higher than 99% of all previous test takers.
C Language: 3.79, higher than 92% of all previous test takers.
Guida C/C++ di Programmazione.it: 
http://cpp.programmazione.it

 genere e` implementato come un albero binario red-black.
mmm... interessante...
Adesso ci do un occhio, grazie!
--
Gerolamo
Newsgroup: it.comp.lang.c++
Titolo: Scope delle variabili e standard

Ciao a tutti: ho un dubbio.
nel codice:
for(int i = 0; i<9; i++) {
    /*codice
            */
}
for(int i = 0; i<12; i++) {
    /*altro
      codice
            */
}
č normale che un compilatore segni che la variabile i č
stata inizializzata due volte? non dovrebbe essere distrutta
alla fine del ciclo for?
grazie in anticipo!


Hai ragione tu. Un compilatore a caso, eh? :-)
Ciao,
Nicola


Dipende da quanto č aggiornato il compilatore... Secondo lo standard del
C++ sģ, ma alcuni compilatori un pņ vecchiotti ancora in uso (leggi:
Visual C++ 5 e 6) non lo riconoscono e segnalano errore.
Soluzione1 (brutta esteticamente ma funziona con tutti i compilatori,
sia pre che post standard):
{ for (int i = 0; i < 9; i++) { /*codice*/} }
{ for (int i = 0; i < 12; i++) { /*altro*/ } }
Soluzione 2 (peggio, perchč non funziona con i compilatori standard):
for (int i = 0; i < 9; i++) { /*codice*/ }
for (i = 0; i < 12; i++) { /*codice*/}
Soluzione 3: usa nomi diversi per i contatori dei vari for.

 Soluzione 3
...
Soluzione 4 (non e' farina del mio sacco, credo di averla
letta proprio su questo newsgroup...)
#define for if (0); else for
Ciao
Nash

stata inizializzata due volte?
No, non lo é. Lo standard dice che una variabile dichiarata nel for
deve essere locale al for ed una volta terminato questo deve essere
distrutta. Probabilmente però stai utilizzando il VC++ che su questo
punto continua ad essere immotivatamente fuori standard.
Dico immotivamente in quanto correggere questa non conformità sarebbe
una cosa assolutamente banale e non creerebbe alcuna incompabilità con
il codice vecchio, ma alla M$ evidentemente questo non lo hanno ancora
capito.
Il Ghenio
---------
// TODO: Place your ass here

 Soluzione 3: usa nomi diversi per i contatori dei vari for.
Grazie a tutti per l'illuminazione.
Personalmente metto un bell'"int i = 0" all'inizio del codice, poi,
all'inizio
di ogni ciclo, metto for(i=0; ecc ecc).
Mi era sorto il dubbio perché il dev c++ non dava errore, ed il vc++ va
contro
quello che ho studiato! ^^;

"Nicola Musatti" <Nicola....@ObjectWay.it> ha scritto nel messaggio
news:3CFF82BA...@ObjectWay.it...

Esatto.. ;)

 capito.
Non ci giurerei, ma mi pare che nel VC++.NET la cosa sia
stata risolta.
Qualcuno conferma (o smentisce?)
--
Gerolamo

 Qualcuno conferma (o smentisce?)
Confermo
Newsgroup: it.comp.lang.c++
Titolo: Modifica di files

Come si possono modificare i files? Con ios::ate si aggiunge e basta, se
all'apertura non si specifica nulla vengono sovrascritti se esistenti. Ma
mettiamo che io devo trovare nel file "prova" una stringa "pippo" e
cambiarla con "pluto". Come faccio? Se il mio puntatore si trova appena
prima di "pippo" e io tento di scrivere "pluto" aggiunge quello che ho
scritto o sovrascrive il carattere puntato dal cursore put?
E per cancellare?

la modifica del contenuto di un file č una scelta che devi fare tu,
se la parola da sostituire č piů lunga della parola esistente
sovrascrivi i caratteri del file,
per cominciare ti consiglierei di fare cosě:
1) salva il file che devi modificare in un array[] dinamico allocando
memoria con new()
2) se ti serve la modifica della parola "pippo" che č formata da 5
caratteri devi utilizzare un campo di 5 byte,
vale a dire, devi controllare nell'array sempre 5 byte per sapere se
la parola č "pippo",
3) apri un file destinazione e riscrivi il nuovo file sostituendo la
parola "pippo" con la parola che preferisci ogni volta che la
incontri...

Newsgroup: it.comp.lang.c++
Titolo: Libreria graphic.h

ho il visual c++ 6, e non riesco a trovare da nessuna
parte questa libreria (anche cercandola bene su internet)...
non è che c'è qualcuno di buon cuore che potrebbe
spedirmela?
grazie,
Licantrop0 / HackZ ExtremE Crew from 2001


"Vi or emacs? .....OpenOffice! =)"
 

 le SDL....
www.libsdl.org
grazie... e scusate per l'OT...
ciao,


 di buon cuore che potrebbe spedirmela?
NOn puoi perchè il vc++ non usa dos e graphics.h è unalibreria di
grafica per dos
-- 
/****************************************/
/HomePage: 
http://accessdenied85.cjb.net
 /
/E-mail: .....access_denied[at]
libero.it
 /              *AccessDenied*
/****************************************/
Newsgroup: it.comp.lang.c++
Titolo: problema con OnPaint()

Salve,
ho un problema nell'utilizzo della funzione OnPaint() in risposta
all'evento WM_PAINT.
Ho fatto un programmino di prova che dovrebbe disegnare nella CFrameWnd
principale una serie di linee:
void CMainFrame::OnPaint()
{
    CPaintDC dc(this);
    if (!disegna)
        return;
    dc.MoveTo(puntix[0],puntiy[0]);
    for (int i=1;i<10;i++)
        dc.LineTo(puntix[i],puntiy[i]);
}
Quando inizia il programma, la variabile disegna e' messa a zero, quindi
non viene disegnato niente. In una funzione attivata da una voce di
menu, vengono riempiti gli array puntix e puntiy e disegna viene posto a
1. Allargando e restringendo la finestra principale in modo da lanciare
l'evento WM_PAINT, si vede per un attimo il disegno delle righe, ma
subito dopo spariscono, come se venisse ridisegnato il background della
finestra immediatamente dopo il disegno delle linee. In che cosa sto
sbagliando?
Grazie
Francesco - Firenze        
mar...@udini.math.unifi.it

sbagliando?
Hai solo la frame oppure all'interno c'e' anche la view ? Da come hai
descritto il problema sembrerebbe che tu abbia una view o comunque una
finestra che ti nasconde cio' che stai disegnando.
Nell'architettura documentet/view delle MFC e' poco salubre disegnare
nella client della finestra frame, di solito a questo scopo viene
adibita la view che guarda caso occupa esattamente tutta l'area client
della frame.
Gianpaolo Bottin
- Live Long and Prosper -

Newsgroup: it.comp.lang.c++
Titolo: MFC - numero di edit box limitato ???

ciao a tutti...
ragazzi sapete come mai non riesco piu' ad aggiungere altri EDIT BOX in una 
dialog costruita col wizard del visual studio  6.0....chiaramente in questa 
dialog ho usato almeno una 50ina di edit box :)
sapete se c'e' un limite del compilatore o il limite e' di windows ???
e nel caso sapete come fare per superarlo...
grazie 1000 a tutti per eventuali risposte o suggerimenti

Ciao,
Questo newsgroup si occupa del linguaggio C++ in quanto tale, e non di
aspetti specifici di particolari implementazioni, come ad esempio
C++/CLI. 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

ok scusatemi

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

Avrei necessità di fare un programma in C estermamente veloce ed allora
avrei pensato di agire sulle funzioni di interrupt per poter usare tutte le
risorse di calcolo della macchina; qualcuno di voi sa dirmi dove posso
trovare del materiale sul quale documentarmi?



qui si parla di C++...il C++, ma pure il C, non sanno cosa sia un
interrupt...chiedi su NG specifici della piattaforma che usi

 ha scritto nel messaggio
news:hha9a.177885$YG2.5...@twister1.libero.it...

Newsgroup: it.comp.lang.c++
Titolo: TROPPO BELLO QUESTO SITO

Ragazzi, l' ho visitato ed è troppo spassoso.
Visitatelo anche voi
www.grande.freeweb.org

...


Newsgroup: it.comp.lang.c++
Titolo: [VC++6.0] Conversione Stringa -> Numero Float ?

Salve a tutti,
    esiste una procedura facile-facile che mi permetta di fare la
conversione dell'oggetto in Visual C++ 6.0?
Ringrazio in anticipo,
        Luca.

 wrote in message 7ef0gh$saf$1...@nslave1.tin.it...


 conversione dell'oggetto in Visual C++ 6.0?
Uhm... da quando il VC++ non supporta più il C standard?
(atof e atol credo esistano ancora).
Newsgroup: it.comp.lang.c++
Titolo: Da un newbie: Errore in compilazione con librerie QT

Salve a tutti
io posterò la mia domanda senza alcuna pretesa di risposta cercando di
essere conciso al massimo
seguendo un tutor sulle librerie QT sono arrivato a fare il make per
crearmi l'eseguibile del codice sotto:
*** il file main.cpp ***
#include <QApplication>
#include "mywidget.h"
int main( int argc, char **argv )
{
  QApplication a( argc, argv );
  MyWidget *w = new MyWidget();
  w.setMainWidget( a );
  w->show();
  return a.exec();
}
*** fine ***
*** il file mywidget.h ***
#ifndef MYWIDGET_H
#define MYWIDGET_H
#include <QVBoxLayout>
class MyWidget : public QVBoxLayout
{
  Q_OBJECT
public:
  MyWidget( QWidget *parent = 0, char *name = 0 );
};
#endif
*** fine ***
*** il file mywidget.cpp ***
#include <qlcdnumber.h>
#include <qslider.h>
#include "mywidget.h"
MyWidget::MyWidget( QWidget *parent, char *name ) : QVBoxLayout( parent,
name )
{
  QLCDNumber *lcd = new QLCDNumber(1, this);
  QSlider *s = new QSlider( QSlider::Horizontal, this );
  connect( s, SIGNAL(valueChanged(int)), lcd, SLOT(display(int)) );
}
*** fine ***
non conosco il c++ ma mi sarei aspettato che l'esempio funzionasse
l'errore che appare è il seguente dal prompt:
C:\CPP\workspace\prova>make
mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory `C:/CPP/workspace/prova'
g++ -c -g -g -frtti -fexceptions -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT
-DQT_DLL
 -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN
-I"C:/cpp/Qt/include/QtCore" -I"C:/cpp/Qt/include/QtCore"
-I"C:/cpp/Qt/include/QtGui" -I"C:/cpp/Qt/include/QtGui"
-I"C:/cpp/Qt/include" -I"." -I"C:/cpp/Qt/include/ActiveQt" -I
"debug" -I"." -I"..\..\Qt\mkspecs\win32-g++" -o debug\main.o main.cpp
main.cpp: In function `int qMain(int, char**)':
main.cpp:10: error: `setMainWidget' has not been declared
main.cpp:10: error: request for member of non-aggregate type before '('
token
main.cpp:11: error: 'class MyWidget' has no member named 'show'
mingw32-make[1]: *** [debug\main.o] Error 1
mingw32-make[1]: Leaving directory `C:/CPP/workspace/prova'
mingw32-make: *** [debug] Error 2
propabilmente non risponderete ma dirmi perché sbaglio sarebbe di enorme
 aiuto
Grazie

   w.setMainWidget( a );
Qui devi mettere
   w->setMainWidget( a );
invece che
   w.setMainWidget( a );
perché w è un puntatore a MyWidget, non un MyWidget.
...non so se ci sono altri errori...
E.

 main.cpp:11: error: 'class MyWidget' has no member named 'show'
Qui non saprei. Ma č una questione che riguarda QT. Ci sono mailing-list
apposite per chi ha bisogno di supporto (
lists.trolltech.com
). Dovresti
chiedere lě, ma se esordisci dicendo che nemmeno conosci il C++, ti mandano
a c4g4r3 subito. :)
Max
Newsgroup: it.comp.lang.c++
Titolo: apertura file e esecuzione di exe NO VIRUS.

Premetto che non sto' creando un virus ma un semplice sistema di protezione
dalla copia.
Come si possono realizzare dei programmi auto eseguibili all'apertura dei un
file qualsiasi, testo , immagini o quant'altro ?
Naturalmente il programmino deve intervenire solo all'apertura di un file e
non deve essere supportato da nessun'altro programma.
Grazie a tutti.
Daniele.

 file qualsiasi, testo , immagini o quant'altro ?
Non si può. (almeno con i sistemi operativi che conosco)
Esisterebbero delle soluzioni, ma riguardano tutte il programma che apre
questi file. (shell del sistema, per esempio)
In Windows l'unica cosa che puoi fare è cambiare l'associazione per i tipi
di file, ma non pensare di portare poi questi file su un altro PC e veder
partire il tuo programma.
Anche se dici di non voler fare virus, se fosse possibile fare quello che
proponi, diventerebbe facilissimo diffondere virus, oltre che violare la
sicurezza di ogni sistema (basterebbe spedire un file di testo ad
Administrator o Root, per far partire un programmino che ti crea come nuovo
utente supervisor del sistema), per questo non è possibile.
Però puoi incapsulare un file in un eseguibile e ottenere (quasi) lo stesso
risultato.
--
Alessandro Monti
Newsgroup: it.comp.lang.c++
Titolo: Scandire un enum

Ciao a tutti,
ecco il problema.
Ho un enum, supponiamo
enum pizza {MARGHERITA, CAPRICCIOSA, NAPOLETANA};
Ok, io vorrei far scegliere all'utente la sua pizza, e per fare questo
devo visualizzare il menu.
Il problema č: č possibile ciclare su tutti gli "elementi" di pizza
(in questo caso i tre citati)?
In caso affermativo, posso visualizzare i nomi delle costanti con
meccanismi tipo typeid e colleghi?
Penso proprio di no. Se č cosě, pensavo ad una map che associa una
pizza a una stringa descrittiva.
Bene, il problema č dove e come inizializzarla.
Per aiutarvi ad aiutarmi, sappiate che pizza č intimamente collegata
alla
class Pizzaiolo,
che nel metodo condisci() accetta un parametro di tipo pizza.
Grazie, giulio
Per favore togliete "!RemoveMe!" dall'indirizzo per rispondere via email
Please remove "!RemoveMe!" from the address to email me

 pizza a una stringa descrittiva.
Se non hai varieta` davvero grandissima, non vale la pena; per
poche decine di elementi, l'overhead di una map<> si ammortizza
appena -- e non si ammortizza proprio, se a fronte di ogni ricerca
devi fare operazioni lentissime, come l'I/O -- men che meno, poi,
se questa "mappa" ti serve a fronte di passaggi sequenziali...!
In altri termini, ti suggerisco di fare invece un buon vecchio
array costante, inizializzato compile time, del tipo:
    static struct pizzadesc {
        pizza pz; const char* nome; const char* desc;
    } lepizze[] = {
        {MARGHERITA, "Margherita", "Mozzarella, Pomodoro, Origano"},
        {CAPRICCIOSA, "Capricciosa", "Acciughe, Capperi, Carciofini, Salsiccia"},
        {NAPOLETANA, "Napoletana", "Mozzarella, Pomodoro, Acciughe"},
        {0, 0, 0} // terminatore
    }
La semplicissima iterazione sara` allora del tipo
    for(int i=0; lepizze[i].nome; ++i) {
        // usa lepizze[i].pz, eccetera
    }
Meglio ancora, questo tipo di struttura si presta molto bene
alla persistenza a/da flatfile, CSV, tabelle relazionali, eccetera; puoi
dunque pensare di rimuovere dal tuo codice l'onere di tenere
tabelle di dati (che tra l'altro sono posti tipici su cui qualcuno
dovra` poter mettere le mani senza ricompilare, ad esempio
quando la tua catena di pizzerie si estendera` all'estero bisognera`
tradurre le stringhe-descrittive -- se vivono sin dall'inizio su di un
archivio-dati separato dal tuo eseguibile, questo e` molto piu`
semplice ed agevole).
Alex

Ecco che i nodi vengono al pettine...
L'enum serve solo per comodità di scrittura, ed eventualmente per rilevare
dei bug, ma tutti i nomi che definisci nel tipo enumerativo... spriscono una
volta terminata la compilazione, durante la quale vengono trasformati in
mere cifre.
Potresti però numerare esplicitamente ogni elemento (basta il primo...) e
poi usarli per indicizzare un array di stringhe.
Ciao
--
Alessandro Monti
Newsgroup: it.comp.lang.c++
Titolo: [press] GC Allocator

Se interessa oggi mi sono imbattuto su questa pagina: 
http://xushiwei.com/
Parla di GC.
Personalmente ero vagamento interessato ad un "intercettatore" di 
memory leak. Meditato di usare una libreria GC per questo. Però è un 
interesse ancora vago, oserei dire informativo.
-- 
Articolo 33 della Costituzione italiana: L'arte e la scienza sono 
libere e libero ne è l'insegnamento

 interesse ancora vago, oserei dire informativo.
Uhm, non so il sito (l'ho appena guardato), ma su CLC++M c'e' un
thread del tizio in cui parla della sua libreria per l'allocazione,
che se non ho capito male non e' proprio GC, ma un sistema di smart
pointer molto veloce. Ha dei problemi in ambienti multithreaded, che
in parte stanno risolvendo realtime in questi giorni :)
Sembra comunque interessante. Buona lettura :)
Ciao,
Marco
 
-- 
I'm using an evaluation license of nemo since 254 days.
You should really try it!
http://www.malcom-mac.com/nemo
Newsgroup: it.comp.lang.c++
Titolo: aiuto..funzioni virtual...

qualcuno saprebbe speigarmi cosa vuol dire se una funzione viene definita
virtual?
vedrei nella msdn ma non ce lho.
grazie per l'aiuto.
mak

 virtual?
Più che MSDN (che, tra parentesi, è consultabile on-line), ti serve un
buon manuale del linguaggio.

Le funzioni virtuali servono per realizzare il polimorfismo... Ora... Se
proprio vuoi te lo spiego, ma sono daccordo con Laforgia quando dice che ti
serve un manuale di C++. L'MSDN è un manuale sulle funzioni del C++, ma non
di C++ (cioè non ti insegna a pensare in C++, ti dice solo cosa il C++ può
fare, se capisci la sfumatura)
--- bye

 ha
scritto:

è solo un problema di sintassi...so cosa è il polimorfismo, vorrei solo
sapere cosa implica il dover definire una funzione come virtual,non so se mi
sono spiegato.
non ti preoccupare per tutto quello che c'è prima, dammi solo una
definizione.
grazie in aticipo per l'eventuale aiuto.
ciao
mak
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 virtual?
Permette di avere late binding dei metodi, al costo di una indirezione in
più nella chiamata.
es.
class A {
public:
    virtual int foo(void) { return 0; }
    int bar(void) { return 0; }
};
class B : A {
public:
    int foo(void) { return 1; }
    int bar(void) { return 1; }
};
...
A *a = new A();
a->foo();    // 0
a->bar();    // 0
B *b = new B();
b->foo();    // 1
b->bar();    // 1
a = b;
a->foo();    // 1;
a->bar();    // 0;
spero ti sia d'aiuto
Federico

 };
Preciserei inoltre che il virtual sulla funzione foo è sottointeso in tutte
le classi derivate. Quindi per il compilatore è come se avesse scritto:
class B : A {
public:
     virtual int foo(void) { return 1; }
     int bar(void) { return 1; }
};
Per finire, attendo ai distruttori virtuali! :-)
(P.S. perchè in America si usa foo e bar? Che significato hanno)
--- bye

> (P.S. perchè in America si usa foo e bar? Che significato hanno)
Ha una derivazione piuttosto volgare da FUBAR, acronimo militare di
"fucked up beyond all recognition"...

quindi è un modo per utilizzare una funzione con lo stesso nome ma che può
così fare cose diverse, dimmi se ho capito..


 così fare cose diverse, dimmi se ho capito..
In realtà non hai colto il concetto del late binding...
Ti consiglio di leggere quà 
http://tinyurl.com/2l9an
Newsgroup: it.comp.lang.c++
Titolo: unsigned char o int ?

Sto scrivendo un programma in Visual C++ 5.0 nel quale per motivi di
velocità di esecuzione e spazio di memoria occupato, utilizzo gli
unsigned char per memorizzare piccoli valori interi positivi i cui
valori sono al massimo vicini a 200. Ho sentito dire però che con i
processori moderni questo tipo di dato viene trattano meno
efficientemente che degli int.
C'è qualcuno che mi sa dire qualcosa in proposito ? E secondo voi qual'è
il miglior tipo di dato da utilizzare per contenere numero compresi tra
0 e 200 ?
Vi ringrazio anticipatamente.
Stefano.

0 e 200 ?
Se ti interessa la velocita` la scelta migliore e` il tipo di dimensione pari alla
lunghezza della parola. Su architetture a 32 bit dovrebbe quindi essere
unsigned int.
Se la memoria e` critica, allora meglio unsigned char.
Paolo
------------------------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
  La vita e` quella cosa che ci accade mentre
  siamo occupati a fare altri progetti. (A. De Mello)
------------------------------------------------------------------

Newsgroup: it.comp.lang.c++
Titolo: Insert ATL Object - Simple app won't compile .. help?

I created a new ATL DLL in app wizard, and ran a test compile ... it worked.
Then I inserted a new ActiveX Server Component from the ATL Object Wizard, and
ran a test compile ... it didn't compile.
I tried all kinds of '#include' combinations but still couldn't get it to
work.  I would have thought this is a common problem since I haven't added any
code, but I couldn't find anything on it in MSDN or the MS KB site.
Any help would be greatly appreciated.
Thanks.
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/
       Search, Read, Discuss, or Start Your Own    

,

Newsgroup: it.comp.lang.c++
Titolo: forse ot

voglio imparare qualcosa sui sistemi operativi!da cosa devo 
iniziare?conoscete libri per principianti?grazie mille!

 iniziare?conoscete libri per principianti?grazie mille!
C'è il buon vecchio Tanenbaum. Fai una ricerca con google.
Kiuhnm

 iniziare?conoscete libri per principianti?grazie mille!
Intendi la programmazione di un kernel o l' uso di un sistema operativo?
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS
"Un problema non è un problema se può essere risolto" 

 
programmazione di un kernel!
insomma
il mio obiettivo è quello di poter fare un giorno, anche lontano, un 
sistema operativo mio!giusto per vedere come funziona e apprezzare 
meglio quelli esistenti!grazie mille

 quelli esistenti!grazie mille
http://www.minix3.org/
Ciao Fabio

 meglio quelli esistenti!
Allora direi che dovresti impare anche l' assembly oltre al c++...
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS
"Un problema non č un problema se puň essere risolto" 

 
un po' d'assembly lo conosco,ma voglio sapere da cosa si parte!grazie

 un po' d'assembly lo conosco,ma voglio sapere da cosa si parte!grazie
Tecnicamente, dagli opcode dei processori.
Poi devi scriverti la libreria per scrivere nel buffer video, quella per 
ricevere input ecc ecc ecc ecc ecc
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS


Newsgroup: it.comp.lang.c++
Titolo: Data e ora

Esiste in C++ una funzione che ritorna la data odierna, oppure devo
crearmela da solo? e nella seconda ipotesi, come fare?
--
(-:  Enjoy!  :-)
------
XplodR
------
e-mail: 
NO-SPAM-...@inwind.it
     TOGLIERE NO-SPAM-2- X RISPONDERE
ICQ: 11938825 (XplodR)
--===--
Redattore della FAQ sulla masterizzazione
http://cdrfaq.sytes.net

 crearmela da solo? e nella seconda ipotesi, come fare?
nell'header <ctime> č definita time, che fa quello che ti serve. Se
poi ti serve sotto forma di stringa, puoi usare asctime (sempre
dichiarata in <ctime>). Se ti serve piů precisione sull'orario dovrai
utilizzare funzioni messe a disposizione dal tuo S.O..

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

Salve vorrei iniziare a programmare in C++, vorrei quindi chiedervi
qual'č il miglior compilatore per iniziare.
Grazie in anticipo dei consigli.
Ciao Emanuele.
Ps ho gią programmato con il turbo pascal

qual'è il miglior compilatore per iniziare.
Il BCC55 e' interessante e ha un prezzo difficile da battere. Lo
puoi scaricare direttamente dal sito Borland/Inprise.
HTH
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff
Newsgroup: it.comp.lang.c++
Titolo: DLL cerco documentazione!

C'e' qualche anima mia che sa indicarmi qualche sito o tutorial dove posso
trovare un po' di esempi di DLL utilizzanti i modificatori __import,__export
e __declspec() ???
grazie 1000
Francesco
gi...@tin.it

Ciao Francesco,
sul sito C++ Warriors, all'indirizzo
http://www.geocities.com/SiliconValley/Foothills/6336/
nella sezione tutorial ce n'e' uno sulle DLL.
ciao, Franco.
--
Posted from [194.184.225.66] by way of 
law2-oe3.hotmail.com
 [216.32.180.107]
via Mailgate.ORG Server - 
http://www.mailgate.org

 wrote in message 7jguc4$oj$1...@nslave1.tin.it...


Newsgroup: it.comp.lang.c++
Titolo: Problema di design

Sto realizzando un piccolo framework c++ per la generazione di file PDF 
che usa (al livello inferiore) la ben nota libreria PDFLib.
Non conosco benissimo il c++ e ho un problema di design. Vorrei creare 
delle funzioni in una classe che mi permettano di disegnare, ad esempio, 
dei rettangoli:
   Esempio:
   pdfpage->rectangle (x, y, w, h);
Nel mio framework vorrei poter usare in modo generico, 4 unita' di 
misura: millimetri, centimetri, punti (1/72 di pollice) e pollici.
Quali sono le possibilita' per gestire questa cosa ?
(a) Passare ad ogni funzione che usa coordinate, una variabile che 
specifica l'unita' di misura ?
(b) Passare sempre alle funzioni i valori in una certa' unita' (es. i 
punti) e usare delle macro che mi convertono i valori dalle altre unita' ?
(c) Creare una classe base PdfUnit e derivare da questa 4 classi (es. 
PdfMM, PdfCM, ecc...) ed usare il polimorfismo ?
Un piccolo aiuto sara' molto apprezzato !
Andrea

 punti) e usare delle macro che mi convertono i valori dalle altre unita' ?
Quasi questa. Io opterei per una unità di misura tale che sia 
sufficientemente "definita" (come precisione) e poi lavori sempre 
rapportandoti ad essa. In questo modo, tra l'altro, gestisci in maniera 
trasparente i ridimensionamenti.
Ciao!
-- 
---
*************** | Have you ever retired a human by mystake?
*** Azathot *** |
*************** | To contact me, ask me gently. Thanks.
Newsgroup: it.comp.lang.c++
Titolo: Re: Allocazione della memoria

 }
Tommy

 FabioMDF
Ovviamente p[2] è la terza posizione. Ottieni "ab9defghi".
FabioMDF
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Come posso farlo? 
in C++ in genere si usa new, ma...
char *c = (char*) malloc(1024);
// controllo allocazione....
c[2] = 'X';        // 3o carattere
// .....
free(c);            // deallocato
Ecco fatto.
Tommy




 Come posso farlo?
Ciao, oltre alle risposte che ti hanno dato, alcune volte all'uso di new e
delete (correttamente, dato che siamo in C++ e non in C), vorrei mostrarti
anche un'alternativa, se lavori con stringhe di caratteri.
Al posto di allocare memoria e poi inserire caratteri, potresti usare (ma
dipende sempre dal programma che intendi fare) std::string.
Ecco un esempio che crea una stringa di lunghezza assegnata inizializzandola
con un carattere predefinito, la stampa, poi cambia un carattere e la stampa
nuovamente.
In questo modo non ti devi preoccupare dell'allocazione in memoria e hai
anche una classe potente per la gestione delle stringhe capace di numerose
operazioni su di esse (qualora ve ne sia necessità).
#include <iostream>
#include <string>
using namespace std;
int main(int argc, char *argv[])
{
        const unsigned int LUNGHEZZA = 50;
        const char carattere = '.';
        // crea una stringa di caratteri
        string p(LUNGHEZZA,carattere);
        // la scrive a video
        cout << p << endl;
        // cambia il terzo carattere (il primo carattere ha indice zero)
        p[2]='P';
        // riscrive la stringa
        cout << p << endl;
        cout << "\nPREMI INVIO...";
        std::cin.get();
        return 0;
}