mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: printf e scanf

    Ciao a tutti... ho iniziato da poco a studiare il C++ e vogli chiedere
alcune cose semplici semplici... Come si fa a leggere un input (da tastiera
o file) e a scrivere un risultato (su schermo o file)? Insomma qualcosa che
sia simile alla printf / fprintf e alla scanf / fscanf.
    Se possibile mi fate qlc piccolo esempio? Grazie :-)

...




 leggere/scrivere da/su file?
MLO@axcdf4 10 $ cat foo.cxx
#include <iostream>
#include <fstream>
#include <string>
int main()
{
  std::ifstream inputFile("foo.cxx");
  if (inputFile) {
    unsigned lineNo(0);
    std::string line;
    while (std::getline(inputFile, line, '\n')) {
      std::cout << ++lineNo << ": \t" << line << std::endl;
    }
    inputFile.close();
  }
  return 0;
}
MLO@axcdf4 11 $ KCC -o foo foo.cxx
MLO@axcdf4 12 $ ./foo
1:      #include <iostream>
2:      #include <fstream>
3:      #include <string>
4: 
5:      int main()
6:      {
7:        std::ifstream inputFile("foo.cxx");
8:        if (inputFile) {
9:          unsigned lineNo(0);
10:         std::string line;
11:         while (std::getline(inputFile, line, '\n')) {
12:           std::cout << ++lineNo << ": \t" << line << std::endl;
13:         }
14:         inputFile.close();
15:       }
16:       return 0;
17:     }
-- 
Maurizio Loreti                      
http://wwwcdf.pd.infn.it/~loreti/mlo.html
Un. of Padova, Dept. of Physics - Padova, Italy          
lor...@padova.infn.it

 (per l'Output della variabile x)
CIN>> x e COUT<< x non sono operatori del C++. >> e << lo sono. cin e
cout (scritti in minuscolo) sono invece oggetti di tipo,
rispettivamente, istream e ostream sui quali vengono applicati tali
operatori. Quindi la forma corretta č, rispettivamente per l'input e
l'output:
std::cin >> x;
std::cout << x << std::endl;
EMG

 leggere/scrivere da/su file?
Allora devi utilizzare oggetti di tipo, rispettivamente, ifstream e
ofstream. Es.:
#include <fstream>
#include <iomanip>
#include <string>
int main()
{
    ifstream in( "nomefile" );
    string s;
    int n = 0;
    while ( getline( in, s ) )
        std::cout << setw( 5 ) << n++ << ": " << s << std::endl;
}
A tale proposito volevo chiedere a chi č piů esperto di me: come cout e
cin, anche setw richiede l'indicazione del namespace std davanti? Oppure
fa parte di un altro namespace?
EMG

 }
Che fai, freghi le idee? :-))) Comunque dal tuo sorgente mi sono reso
conto che veramente l'indicazione del namespace std andrebbe messa quasi
dappertutto. Rischia di diventare troppo oneroso, non ti pare? Forse
sarebbe meglio utilizzare uno degli altri sistemi disponibili.
EMG

 sarebbe meglio utilizzare uno degli altri sistemi disponibili.
Guarda l'ora del post...  :-)  ma gli esempi semplici sono sempre
quelli.  using namespace std;  o servirsi di egcs che ancora non
implementa completamente i namespaces e non batte ciglio davanti alla
mancanza di std:: .
Comunque mi sono accorto di essere andato fuori tema; non c'e' un solo
cin o cout da file!  Colpa mia; ho imparato dal C a non usare altro
che lettura di interi records da decodificare poi internamente.

Newsgroup: it.comp.lang.c++
Titolo: aiuto: come generare numeri random?

Ciao a tutti.
Ho da poco cominciato a studiare programmazione in c++ (da
autodidatta) e per mettere a frutto le prime cose imparate sto facendo
un programma di "master mind".
Sto usando la funzione rand() per la generazione della combinazione da
indovinare. Sono riuscito a capire guardando nelle librerie come
fargli generare un numero in un ragne tra 0 e 9 (generati[0] =
random()%(9+1);), ma non riesco assolutamente a capire come fare si
che ad ogni generazione (compresa ogni partenza del programma) i
numeri generati siano diversi.
E' un altra funzione da usare oppure posso farlo con rand()?
Vi ringrazio anticipatamente per l'aiuto, e ovviamente continuero' a
linkare questo newsgrup che mi pare proprio interessante :)
Ciao e grazie. Ampex

Ciao Ampex,
prima di chiamare la funzione rand(), per la generazione di
numeri random, devi chiamare srand() per "mescolare"...
ciao, Franco.
--
Posted from [194.184.225.66] by way of 
law2-oe14.hotmail.com
 [216.32.180.118]
via Mailgate.ORG Server - 
http://www.mailgate.org

 E' un altra funzione da usare oppure posso farlo con rand()?
C'e' la funzione 
  int srand( int seed );
che inizializza il generatore di numeri casuali con il parametro seed.
Per ottenere numeri diversi ogni volta (indispensabile per i giochi),
conviene inizializzare il generatore con l'orologio di sistema:
  srand( time(0) );
In fase di debugging conviene usare un seme fisso per inizializzare il
generatore, in modo che le sequenze siano ripetibili.
	Mauro


 Ciao e grazie. Ampex
C'č la funzione srand(unsigned int).
Normalmente io faccio srand(time(NULL)) all'inizio del programma e cosě ottengo
sempre una sequenza diversa.
altre idee ?
ciao, Leo
-- 
    .--.     
   |o_o |    Yesterday, today, tomorrow.
   |:_/ |    
  //   \ \   
 (|     | )  
/'\_   _/`\                           Leopoldo Ghielmetti, EPFL-DMA ROSE
\___)=(___/

 numeri generati siano diversi.
srand( time( 0 ) );
EMG

Newsgroup: it.comp.lang.c++
Titolo: Libreria Http

]

 Grazie
Specificare sempre la piattaforma target.
In Win32 c'e' a disposizione in modo nativo nel sistema la  libreria WinInet.
Consultare l'SDK.
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/
       Search, Read, Discuss, or Start Your Own    


ICQ #34602650

Consultare l'SDK.
Il target e' WIN32, ma vorrei poterla compilare pure con il GCC.

Newsgroup: it.comp.lang.c++
Titolo: Interazioni fra Borland C++ Builder e Visual C++

Ho notato, dando un'occhiatina veloce all'ambiente di sviluppo Inprise, che
č possibile creare delle finestre e annessi in modo semplice e veloce. Ma
poi, posso importare una finestra con il relativo menů in Visual C++ e
modificare il codice per aggiungere i collegamenti alle funzioni e altro? O
devo usare solo uno dei due ambienti di sviluppo?
Grazie in anticipo
--
San Vegeta from Hell
http://www.geocities.com/Area51/Dungeon/8436
http://come.to/Fantasy.it

devo usare solo uno dei due ambienti di sviluppo?
Normalmente, uno solo dei due; l'unico modo sensato di fare
comunicare fra loro componenti sviluppati in entrambi e` usare
il Component Object Model (COM), e francamente, benche` io
sia un patito di COM, non sceglierei deliberatamente di usarlo
per connettere codice fatto con due compilatori C++ diversi
(magari due linguaggi drasticamente diversi come vantaggi e
svantaggi, tipo C++ e Basic o Java, ma non due dialetti dello
stesso...).
Alex

 O devo usare solo uno dei due ambienti di sviluppo?
Mi sembrerebbe molto più regionevole
Saluti
Paolo

Newsgroup: it.comp.lang.c++
Titolo: [forse OT] strano problema con thunderbird

ciao
mi rendo conto che non sono in argomento, pero'
dal momento che il prob. sembra legato a questo ng
ho pensato di dirvelo
oggi ho installato e provato Mozilla Thunderbird
sia su linux che su windows
funziona benissimo davvero, pero' appena ho cominciato a
fare la sottoscrizione ai ng mi sono accorto che
non e' possibile sottoscrivere questo (i.c.l.c++)
invece per gli altri ng non c'e' problema
forse e' infastidito da quei + ?
mah ...
scusate ancora per l'OT
ciao

d. wrote:
[...]
vabbe'
ho capito che questo problema non interessa a nessuno
ciao

 ho capito che questo problema non interessa a nessuno
E che ti devo dire?
Vero, non lo fa sottoscrivere neppure a me.
Verifica se è un bug noto e se non lo è scrivi una mail agli sviluppatori.
Oppure chiedi su it.comp.software.newsreader
Ma per fare questo non c'era bisogno di una risposta qui.
O no?
-- 
Gerolamo

 mah ...
a me funziona benissimo.
-- 
Nuoto e me ne frego!

 
ok, volevo solo sapere se era un problema solo mio
ciao

 forse e' infastidito da quei + ?
Come ti ho già detto in 
http://makeashorterlink.com/?Q48712C48
a me ThunderBird 0.5 e 0.6 funziona benissimo con questo newsgroup.
- Dario

 Vero, non lo fa sottoscrivere neppure a me.
ciao
non so se ti puo servire, comunque se vuoi puoi
modificare manualmente il file news....rc aggiungendo
una riga con scritto il nome del newsgroup
seguito dai due punti
it.comp.lang.c++:
e il tutto dovrebbe funzionare
ciao
d.

 - Dario
forse e' perche' con la versione 0.5, con cui non c'erano
problemi, hai fatto la sottoscrizione al newsgroup, poi
passando alla 0.6 hai tenuto la vecchia sottoscrizione
prova a sottoscrivere adesso un altro newsgroup che non hai mai
letto e che contiene un + nel nome ... vedrai
ciao
Newsgroup: it.comp.lang.c++
Titolo: Vettori Dinamici...

Salve a tutti e grazie in anticipo per le eventuali risposte,
Volevo chiedere, poichč ho poco tempo per approfondire l'argomento, in
quanto il C nn č il linguaggio che uso di solito ma ho urgente bisogno di
completare un progetto, se mi potreste fare un esempio di utilizzo di array
dinamico, ad esempio avendo una funzione che prende un vettore esterno
globale e ci aggiunge un semplice elemento in fondo alla lista di elementi,e
ad esempio (sarebbe il top :-) ) con un'altra funzioncina che va a leggere
l'ultimo elemento e lo elimina dalla lista...
Questo mi completerebbe la panoramica delle funzioni che ho bisogno di
conoscere..
Grazie Mille,
Alessandro



 Grazie Mille,
Ciao.
#include <iostream>
#include <iterator>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
        int a[] = { 3,4,7,0,5 };
        const unsigned int sz=sizeof(a)/sizeof(*a);
        // definisce un vettore standard
        vector<int> v(a,a+sz);
        // stampa il vettore sull'output
        copy(v.begin(), v.end(),ostream_iterator<int>(cout, " "));cout <<
endl;
        // elimina l'elemento mediano
        vector<int>::iterator it=v.begin()+v.size()/2;
        v.erase(it);
        copy(v.begin(), v.end(),ostream_iterator<int>(cout, " "));cout <<
endl;
        // elimina l'elemento in coda
        v.pop_back();
        copy(v.begin(), v.end(),ostream_iterator<int>(cout, " "));cout <<
endl;
        // aggiunge un elemento in coda
        v.push_back(-1);
        copy(v.begin(), v.end(),ostream_iterator<int>(cout, " "));cout <<
endl;
        return 0;
}

 va a leggere l'ultimo elemento e lo elimina dalla lista...
void pop_function( std::vector<my_type>& vect, my_type& val )
  {
  val = vect.back();
  vect.pop_back();
  }
-- 
Qual'e' il colmo per uno studente-lavoratore?
Avere un quadrato che si crede un rettangolo.
Newsgroup: it.comp.lang.c++
Titolo: Protected o Private?

Salve a tutti e buon 2K!
Ho una domanda semplice semplice: qual è la differenza tra membri protected
e private?
Mi sembra che c'entri qualcosa l'ereditarietà, ma le mie conoscenze si
fermano qui.
Inoltre, perché nei copy ctor posso accedere ai membri protected della
classe sorgente? Non dovrebbero essere inaccessibili dall'esterno?
Grazie
Kojak
vrke...@hotmail.com
http://space.tin.it/io/viscorci

 classe sorgente? Non dovrebbero essere inaccessibili dall'esterno?
Non so cosa sia la "classe sorgente".  Se intendi la classe-base
(da cui erediti), i suoi attributi protected sono accessibili purche`
attraverso la classe stessa che sta accedendo.  Per intenderci:
    class base {
        protected: void foo();
    };
    class deriv: public base {
    public:
        void bar(deriv& pep) {
            pep.foo();    // ok
            base b;
            b.foo();        // errore: non accessibile
        }
    };
Alex

 classe sorgente? Non dovrebbero essere inaccessibili dall'esterno?
La protezione funziona a livello di classe.  I metodi
di una classe X hanno accesso ai membri protected e
private di tutte le istanze della classe X (non solo
a quelli della propria istanza).
	Mauro

Grazie a tutti, ho capito (spero :-)
--
Kojak
vrke...@hotmail.com
http://space.tin.it/io/viscorci




 potrebbe dall'esterno usare direttamente la funzione mio.
Non mi risulta che derivando si possa rendere pubblico ciò che è privato
o protetto della classe base.
EMG

 wrote in message news:3870FCF2...@flashnet.it...

Cio` che e` privato, no.  Cio` che e` protetto, si`, limitatamente, come
al solito, all'accesso a membri (protetti nella classe-base) della classe
derivata.  Per chiarire:
    class base {
    protected:
        void goo();
    };
    class deriv: public base {
    public:
        using base::goo;
    };
    void pippo()
    {
        deriv d;
        d.goo();    // OK
        base& b=d;
        b.goo();    // NO!
    }
deriv ha reso public la goo(), che in base era protected, ma l'accessibilita`
public e` relativa solo all'accesso alla goo() *di un deriv*, e NON si estende
all'accesso alla goo() *di un base* (anche se quella istanza di "base" e` in
realta` un deriv, come ovviamente lo e` in pippo...).
Alex

 derivata.
Grazie. Ho preso la solita toppa...
EMG
Newsgroup: it.comp.lang.c++
Titolo: TUTORIAL

Salve sapete se esiste una specie di guida dove sono riportate tutte le 
librierie con i loro costruttori e i loro metodi . grazie (ovviamente per il 
c++) 

 c++)
Google is your friend ;)
http://www.cplusplus.com/
Ciao Neo


Non e' chiaro: nell'oggetto scrivi "TUTORIAL", ma nel corpo chiedi di 
fatto un riferimento.
Quest'ultimo lo puoi trovare qui:
http://dinkumware.com/manuals/
o qui:
http://msdn2.microsoft.com/en-us/library/52cs05fz.aspx
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila

Newsgroup: it.comp.lang.c++
Titolo: realloc?!?!!?!

MAIN:
char Ric [10001];
Instance.Recv(Ric);    // chiamata alla procedura
PROCEDURA:
int SockAdmin::Recv
( char* Ricevuto )
{
.
.
realloc (Ricevuto,10000);
.
.
.
}
Questa sopra è la procedura che mi da problemi, al suo interno viene
aumentata la dimensione di un array di char, l'array a cui punta "Ricevuto"
è definito nel main del programma.
Dato che mi si pianta volevo chiedere aiuto a qualcuno, come faccio a fare
in modo che la mia procedura modifichi la dimensione dell'array di char
(sottolineo che l'array di char è definito nel main)??
Ciao a tutti, grazie!!!

 ha scritto nel messaggio
news:bmeok5$1mr$1...@newsreader.mailgate.org...


 in modo che la mia procedura modifichi la dimensione dell'array di char
Le dimensioni di un array (sia esso statico, automatico o dinamico) non 
possono mai essere modificate.
Quello che si fa, per modellare il concetto di un array che aumenta le 
proprie dimensioni, è allocare (new/malloc) un nuovo array, copiare il 
contenuto e liberare (free/delete) il vecchio array. Parliamo, ovviamente, 
di array allocati dinamicamente.
Nel tuo caso, puoi scrivere una classe che implementi internamente questa 
logica, oppure usare std::vector<>.
Max

 logica, oppure usare std::vector<>.
O una lista.

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

C'è qualcuno che sappia dirmi come scrivere un file in modo tale che il
contenuto non sia immediatamente visualizzabile (come il file EXE, DLL, BMP,
ecc.)?
Ho provato ha scriverli (utilizzando fopen e fprintf) sia in ascii che in
binario, ma non cambia niente.
Grazie a tutti.

...

Dipende per cosa ti serve... comunque:  EXE e DLL non li capisci perche' li
apri come ascii mentre sono codici binari.. diciamo in modo un po' grebano
linguaggio macchina. Le BMP sono un formato di immagini, quindi quello che
non capisci e' in realta' un flusso di bit, codificato secondo una certa
regola; per fare quello che vuoi, e se ho capito bene la domanda, devi
criptare un file, e questo si fa, in maniera non molto professionale, ma
giusto per "scoraggiare" chi apre il tuo file con un editor di testi,
facendo ad esempio una operazione binaria reversibile su ogni carattere che
mandi in output, e di conseguenza l'operazione inversa su quelli in input.
Il modo in assoluto piu' facile e' il NOT.
Sperando di essere utile...
                       Paolo Campanella
 
pa...@mbox.ulisse.it
http://www.geocities.com/SouthBeach/Marina/8135
Newsgroup: it.comp.lang.c++
Titolo: ecommerce@telecomitalia.it

Per errore ho inserito nell'ordine C20000173580 a nome di Madaschi Euro
(password 185863) l'opzione Inserimento nell'elenco telefonico. Se
possibile, vorrei eliminarla. Nel caso non poteste farlo voi, gradirei
sapere come è possibile eliminarla.
Grazie
--
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Good times for a change
See the look I've had
could make a good man turn bad
So please, please, please
Let me get what I want this time.
///////////////////////////////////

sapere come è possibile eliminarla.
Ehm, forse hai sbagliato NG...

Newsgroup: it.comp.lang.c++
Titolo: NIUBBO aiuto sui puntatori - parte2

allora, sono riuscito a fare qualcosa:
ma ora ho una domanda, come faccio a ogni inserimento a incrementare il
valore di cod?
#include <iostream.h>
const int DIMRECORD = 6;
struct giocata
{
	int cod;
	int numeri[DIMRECORD];
	giocata *next;
};
void inizializza(giocata * &lista, int numgiocati[]);
void nuova(giocata * &lista, int numgiocati[]);
void main()
{
	int numgiocati1[DIMRECORD]={30,40,50,60,70,80};
	int numgiocati2[DIMRECORD]={11,21,31,41,51,61};
	int nuovaGiocata[DIMRECORD]={0,0,0,0,0,0};
 
	giocata *lista=0;
	inizializza(lista, numgiocati1);
 
	inizializza(lista, numgiocati2);
 
	nuova(lista, nuovaGiocata);
 
	while(lista != NULL) 
	{
		cout<<"cod:"<<lista->cod <<" ";
		for(int i=0; i<DIMRECORD; i++)
		{
			cout<<lista->numeri[i] <<"  ";
		}
		cout <<endl;
		lista=lista->next;
	}
	cout <<endl;
}
void inizializza(giocata * &lista, int numgiocati[])
{
        giocata *ptr=lista;
 
		while(ptr!=0)
              ptr=ptr->next;
        if (ptr==0)
		{
           giocata *temp=new giocata;
           for(int i=0; i<DIMRECORD; i++)
		temp->numeri[i]=numgiocati[i];
 
		temp->next=lista;
           lista=temp;
		}
 
}
void nuova(giocata * &lista, int numgiocati[])
{
	giocata *ptr=lista;
 
	while(ptr!=0)
		ptr=ptr->next;
	if (ptr==0)
	{
		giocata *temp=new giocata;
 
        for(int i=0; i<DIMRECORD; i++)
		{
			cout<<"inserisci:";
			cin>>numgiocati[i];
			cout<<"\n";
			temp->numeri[i]=numgiocati[i];
		 }
 
		temp->next=lista;
	        lista=temp;
	}
}
-- 
Yurij Gagarin
http://www.puknezabudok.ru/gagarin.jpg
La M.I.R. ne ha visti cadere, di Shuttle

Qui potresti trovare (come ti ho già proposto) soluzioni al tuo problema  
in C++, mentre il problema che esponi è puramente in C.
Se non vuoi affrontare un approccio in C++ puoi provare su it.comp.lang.c
Cyo
Newsgroup: it.comp.lang.c++
Titolo: Protezione software e algortimi di criptazione

Ciao a tutti,
    dovrei realizzare un sistema di protezione per prevenire
installazioni non autorizzate del software. Fermo restando che il
problema non ha un soluzione "sicura" vorrei cercare di fare il massimo
tenendo conto dei limiti che mi sono stati imposti (no alle protezioni
hardware) e delle mie conoscenze dell'argomento.
Avevo pensato di generare un codice di riferimento basandomi su un
parametro hardware della macchina (es. MAC Address della scheda di
rete, che deve essere presente) e fornire all'utente un controcodice
per sbloccare l'applicazione.
Quello che pensavo di fare nello specifico è realizzare due funzioni
f,g tali che
    Riferimento = f (MACAddress)
Sblocco = g(Riferimento)
L'applicazione al suo avvio, verifica se
    SbloccoUtente = g(Riferimento)
Per evitare problemi di utilizzo, in paesi con un set di caratteri
diverso da quello latino, vorrei far si che le due funzioni f e g
restituiscano solo numeri.
Le funzioni dovrebbero inoltre restituire stringhe di una certa
lunghezza (inferiore ai 30 caratteri) per evitare telefonate fiume.
Qualcuno sa indicarmi algoritmi/siti di riferimento oppure soluzioni
alternative ?
Grazie in anticipo

 alternative ?
Il mio consiglio e' risparmiare un po' di tempo, e comprare una 
soluzione gia' fatta...
C'e' FlexLM, per esempio...
Ciao,
Marco

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

Salve. A prescindere da quale sia il mio obiettivo la domanda č questa:
da dove inzio per programmare? Sono passato al C dal Java per esigenza...
Uso il compilatore LccWin32 e lavoro sotto Windows.
Quello che vorrei sapere č: per creare un eseguibile quali sono i parametri
fondamentali che devo considerare?
Grazie infinite.


Quanto ti costa un bel corso di programmazione.... 8-)
Luc.

 fondamentali che devo considerare?
1) se sei passato al C, passa a
    it.comp.lang.c
    se sei passato al C++
    rimani qui.
2) parti dalle FAQ di questo NG
    Credo che vengano postate regolarmente...
3) come scritto anche nelle FAQ, il tutorial di Paolo Marotta
    č un ottimo punto di partenza.
4) 
http://www.programmazione.it/
Ciao
Gerolamo
Newsgroup: it.comp.lang.c++
Titolo: Possibile??? II

Come è possibile che ottengo una ambiguità con
#include <iostream>
template<class T> inline void f(const T&) { std::cout << "reference\n"; }
template<class T> inline void f(const T*) { std::cout << "pointer\n"; }
main()
{
  int i = 4;
  int* pI = &i;
  const int* const_pI = &i;
  int& rI = i;
  const int& const_rI = i;
  f(pI);             // AMBIGUITA' ?????
  f(const_pI);
  f(rI);
  f(const_rI);
}
Temo di avere le idee un poco confuse!
Grazie  Manlio Perillo

 template<class T> inline void f(const T*) { std::cout << "pointer\n"; }
Questa e` una specializzazione parziale della f() teste` vista.
Ahime`, non tutti i compilatori C++ supportano ancora le
specializzazioni parziali.
Alex





wrote:


bella?!?!?!?
Perche' vuoi eliminare i puntatori ? sono cosi' simpatici !
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
--------------------------------------------------------------
"Partire e' un po' morire e morire e' partire un po' troppo !"
--------------------------------------------------------------

 
E' scritto nello standard??????? 
O l'hai letto su qualche bel librone???
Fausto

Era una battuta, non vi siete resi conto che stavate appunto
descrivendo metodi di programmazione che evitassero all'utente finale
l'uso esplicito di puntatori e references nel 'main'...
Luc.



Ma ho usato il BCC5.5!!
Quindi il mio codice dovrebbe compilare senza errori?
Saluti  Manlio Perillo

 Quindi il mio codice dovrebbe compilare senza errori?
Secondo me, se usassi un compilatore perfetto, dovrebbe.  Ma
BCC e` ben lungi dall'esserlo, naturalmente (non che Microsoft
o gcc siano poi sostanzialmente migliori, sigh; forse KCC?).
Alex



   f(rI);
Per rispondere a un altro poster, questa non puo' essere ambigua perche
in nessun modo int & puo' combaciare con const int *.
Ciao,
Nicola

Newsgroup: it.comp.lang.c++
Titolo: PER INIZIARE

E' possibile trovare un tool per la programmazione "visuale" (c++)
gratuitamente?
Altrimenti quali sono i migliori?
Visto che sono alle prime armi, è giusto partire già con un ambiente
"visual" ?
Grazie a tutti.

"visual" ?
no
--
Lawrence "Rhymes" Oluyede
rhy...@myself.com
cosa c'entra Visual Basic 
con la programmazione?
(Antonio Cuni, PROGRAMMATORE)
Newsgroup: it.comp.lang.c++
Titolo: L'uso di Java causa problemi con i puntatori...

Dopo aver codato qualche mese in java (e dopo i festeggiamenti di questa 
notte) mi sono dimenticato le piu' elementari regole per l'uso dei puntatori 
col c++ :)
A parte gli scherzi, il problema e' che ho una classe astratta e delle 
classe figlie derivata da questa che costruisco cosi':
MyAbstractClass *a = new Figlia();
poi ho un vector fatto cosi': vector<MyAbstractClass*> myVector;
e lo riempio con myVector.push_back(a); ecc
Adesso ho necessita' di passare a funzioni membro di altre classi una copia 
di elementi di questo vector (non i puntatori, proprio una copia degli 
oggetti a cui puntano i puntatori del vector, perche' voglio modificare una 
copia locale degli elementi).... io gli passo myVector.at(posizione) ma 
chiaramente non funziona... Avete dei suggerimenti?
Grazie,
fadeh 

 modificare una copia locale degli elementi).... 
Se quello che hai è un puntatore a una classe astratta, non c'è modo di 
effettuare una copia, a meno di non effettuare un cast al tipo concreto 
effettivo.
Se gli oggetti devono poter essere duplicati, puoi aggiungere questa 
funzionalità all'interfaccia della classe base, prevedendo, ad esempio, una 
funzione membro 'clone', 
   MyAbstractClass* clone() const = 0;
 
che sarà implementata in modo appropriato in tutte le classi derivate:
 MyAbstractClass* 
  Figlia:: clone() const {  return new Figlia( *this ); }
Max

  Figlia:: clone() const {  return new Figlia( *this ); }
Uh! Potrebbe essere cio' che mi serve, adesso vedo come utilizzarla e ti 
faccio sapere.
Grazie mille,
fadeh 

  Figlia:: clone() const {  return new Figlia( *this ); }
Funziona. Grande :)
Ciao,
fadeh

Newsgroup: it.comp.lang.c++
Titolo: DJGPP: variabili di sistema

Salve !
Nonostante abbia settato tutte le variabili di sistema correttamente
(credo),
quando vado a compilare o a linkare col djgpp un programma che usi una o
piu' librerie non standard (ad esempio la libreria di iostream) ottengo
questo messaggio di errore:
mcd.cc:3: iostream.h: file not found
Qualcuno puo' darmi una mano ?
Fabio

 mcd.cc:3: iostream.h: file not found
hai fatto set DJGPP=c:\djgpp\djgpp.env ??
---
Ranger, togli .fr dal mio indirizzo per rispondere
http://members.tripod.com/%7Eranger_rg/

 questo messaggio di errore:
E' un problema del compilatore  e non del linking.
Nei percorsi che gli hai indicato per i file .h con le variabili di 
ambiente del DOS non c'e' quel file.
Se funziona come il gcc di OS2/Unix sei ancora in tempo ad aggiungere 
sulla linea di comando lo switch
-Ipercorso
dove percorso e' il path in cui si trova quel file che non trova, 
cercalo sul tuo HD.
** Email replies to 
md7...@mclink.it
 **
visit my homepage at: 
http://www.volftp.tin.it/IT/IT/ITALIANI/rullo/index.htm
Newsgroup: it.comp.lang.c++
Titolo: Specificare FSM in runtime

Salve a tutti,
il titolo e' probabilmente poco chiaro, ma e' un problema che mi sono
posto oggi per la prima volta e non so nemmeno bene come chiamarlo, e
nemmeno lontanamente come approcciarlo (anche se sono sicuro che e' un
problema ben noto e risolto).
Il problema: so scrivere una FSM "hardcoded" nel codice, compilarla e
farla funzionare, ma come fare se volessi renderla un parametro da
caricare a runtime?  Cosi' come specifico dei parametri del programma
in un file di testo che parserizzo e carico all'avvio del programma,
e' possibile avere un file che specifica (in qualche modo) una FSM,
che viene "caricata" all'avvio del programma ed "eseguita" ?  Se si',
come?  Come si approccia questo tipo di problema?
Thx,
Pleg

 
Non so se ti può aiutare:
http://www.complang.org/ragel/
Dalla pagina di Wikipedia: "Ragel is a finite state machine compiler".
Ciao

    Usare una macchina virtuale tipo LUA o Python?
Vorrei specificare la macchina a stati in un file a parte, in modo da
poterne definire quante ne voglio, e caricare quella che mi serve
all'avvio del programma.
Devo ancora capire bene come specificare il problema, ad es. non ho
idea di come definire l'interfaccia tra questa FSM e il resto del
programma, che e' hardcoded.
In pratica, hardcoded ci sara' uno Hardware Abstraction Layer al mio
hardware, che esporta una API che la FSM puo' usare per gestire
l'hardware come cacchio le pare.
Pleg

Io farei un bel binding con python.
Hai quindi la possibilit� di eseguire script in python e ti esporti 
tutti le funzioni che vuoi dal c/c++.
http://stackoverflow.com/questions/1492755/python-c-binding-library-comparison
Ciao


Newsgroup: it.comp.lang.c++
Titolo: Libreria per gestire sessioni telnet

Salve, vi scrivo perch� sono in cerca di una buona libreria di classi 
che faciliti l'uso del protocollo telnet nella programmazione di rete, 
sapreste indicarmi qualcosa da cui partire?

 sapreste indicarmi qualcosa da cui partire?
Nelle QT c'e' qualcosa anche per telnet:
http://doc.trolltech.com/solutions/3/qttelnet/qttelnet.html
Forse pero' preferiresti qualcosa di piu' mirato.
Ciao.


Pu� andare, certo avrei preferito una libreria indipendente, ma vedo che 
  fa quello che voglio ;)
Newsgroup: it.comp.lang.c++
Titolo: Screen saver con C++

Salve a Tutti , e' possibile creare dei screensaver con C++ per win98?
Ho notato che nel sistema operativo gli screensavers sono implementati
con l'estensione .scr mentre il compilatore  Dev-C++ crea dei .exe e'
possibile aggirare questo problema o e' necessario un'altro ambiente
di programmazzione?
Grazie per l'attenzione!
Saluti 
Felix
 

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


A parte l'OT ma in sintesi... io non uso DEV-C++ ma se questo ti crea degli
screensaver come dice di fare allora devi soltanto cambiargli l'estensione
da .exe a .scr visto che in effetti gli screeensaver dal punto di vista del
contenuto sono eseguibili a tutti gli effetti (solo con una particolare
interfaccia a livello di programmazione).
Bye
Antonio

 ha scritto nel messaggio
news:O530a.15458$YL4.1...@tornado.fastwebnet.it...

non e' cosi' banale: in realta' uno screen saver sono 2 programmi in uno:
-lo screen saver
-il configuratore
e si distinguono dal parametro passato sulla linea di comando dal sistema
operativo quando lo invoca.
cerca su MSDN e posta su qualche newsgroup di win32 ne sanno certo di piu'
di me! :)
ciao,
nids
Newsgroup: it.comp.lang.c++
Titolo: TwipsPerPixel

Ciao a tutti,
sto realizzando un progetto in VC++ 4.0 che utilizza la MSFlexGrid. 
Il mio problema e' che dovrei fare in modo che la somma della
larghezza delle varie colonne dia la dimensione della finestra della
griglia stessa. 
La funzione membro SetColWidth richiede il valore della larghezza in
Twips ma io ricavo la dimensione della finestra che contiene la
griglia con la GetWindowRect che mi da il valore in screen
coordinates. Credo che per convertire queste in Twips dovrei avere
l'equivalente della Screen.TwipsPerPixel di Visual Basic ma non so
come ricavare un equivalente in VC++.
qualcuno mi puo' aiutare?
GRAZIE.

come ricavare un equivalente in VC++.
I twips sono per definizione 1440 per pollice.  Visto che ti 
interessa solo la larghezza (coordinata x), puoi dunque fare:
    int 
    PixelsToTwips_x(int nPixels)
    {
        HDC hdc = CreateDC("DISPLAY",0,0,0);
        int px = GetDeviceCaps(hdc, LOGPIXELSX);
        DeleteDC(hdc);
        return (nPixels*1440)/px;
    }
Spero che la logica sia chiara, comunque, per
riassumere: CreateDC torna l'handle di un device
context (qui, il display), che poi dobbiamo togliere
di mezzo con DeleteDC prima di uscire.
GetDeviceCaps mi torna le informazioni richieste
sul device corrispondente a un certo DC; qui, sto
chiedendo i pixel/"pollice logico"; nell'istruzione di
return, completo il calcolo grazie alla costante di
1440 twips/pollice.
Facci sapere se il tutto ti funziona...!-)
Alex

Newsgroup: it.comp.lang.c++
Titolo: Which book to buy

Hi
I will buy a book about C++.
I primarly want it to include loads of examples.
I am a complete beginner to the C language.
Thanks in advance: Fredrik

Thanks in advance: Fredrik
You are welcome.
Ciao, Marco.
Newsgroup: it.comp.lang.c++
Titolo: Sono disposto ad insegnarvi il C/C++

Salve, mi chiamo Alessio Treglia, sono un ragazzo di tredici anni, vivo ad
Aprilia (LT), e sono disposto ad insegnare a chiunque il C/C++,
gratuitamente, s'intende.
Il mio indirizzo è 
tre...@grisnet.it
, la mia Web page
http://www.grisnet.it/utenti/treglia
.
Ciao.

 wrote:

Sei un pazzo!!!
Fin che puoi pensa ad altro, giocare a pallone, donne, vino, fumo...
quel che vuoi! (nessun invito a drogarsi o spacciare, s'intende.. 8) )
Poi dopo, con calma... C++
Ciao!
P.S. E' tutto uno scherzetto... comunque complimenti per la tenera
eta'.
________________________________________________________________________________
Stefano "Panda" Baraldi
EMAIL: 
pa...@intermed.it
WWW:   
http://www.geocities.com/SiliconValley/Park/7471
---------------------------------------------------------------------------------

Ciao.
 
Aspetto la prima lezione
Ciao
--
____________________________________________________
boccetto    
bocc...@NOSPAMzuzzurello.com
http://www.zuzzurello.com/informazione/boccetto/
 
" Se non avessimo difetti, non proveremmo
  tanto piacere a notare quelli degli altri. "
 
                         La Rochefoucauld
_____________________________________________________


Sono Luca Cittadini, ho 15 anni e mi piacerebbe molto programmare;
contattami!!
-- 
Luca Cittadini
pcitt...@getnet.it
 

 Ciao.
Non farlo, altrimenti ci chiudono questo sgangherato newsgroup!
-- 
"Prendiamolo, e' Cinna: ha ucciso Cesare!!!" - "Ma io sono
Cinna il Poeta, non Cinna il Congiurato!", disse Cinna.
"Beh, allora ti uccideremo per i tuoi cattivi versi ..."  
 (libero adatt.) "Giulio Cesare" - W. SHAKESPEARE

 
Alessio, ma ci sei?
Ho provato a mandarti E-mail a 
tre...@grisnet.it
, 
atre...@freeemail.it
,
al...@freeemail.it
 ma non ho ricevuto risposte. Adesso provo sul newsgroup.
Ah, non ho potuto rispondere subito perchč ho avuto problemi con l'invio di
posta, ma se guardi ora le risposte ci sono tutte!!!!   ;-)
-- 
Luca Cittadini
pcitt...@getnet.it

Newsgroup: it.comp.lang.c++
Titolo: Sendmessage a una toolbar

Mando la costante tb_pressbutton correlata con id del  button e il flag 1 o
0 ma non ottengo mai l'effetto desiderato.
Chi mi posta per piacere un esempio su come pressare un bottone di una
toolbar .
Grazie

0 ma non ottengo mai l'effetto desiderato.
Prova su it.comp.programmare.win32.
-- 
Marco Barisione (ICQ 84277092)

 wrote in message
news:u3b14ukeok9fn6bq7...@4ax.com...

Newsgroup: it.comp.lang.c++
Titolo: deitel e deitel

Che ne pensate dei manuali deitel sul c++?
io ho comprato il primo...aspetto sia critiche che apprezzamenti...
ciao

 ciao
Quelli che ho sentito ne hanno parlato bene. Chiaro ma talvolta incompleto,
dicono....
Io non l'ho mai letto però, quindi prendi quanto sopra con le pinze.....

 ciao
buono il primo capitolo, ma poi
si perde sul capitolo 2, le funzioni
e sui puntatori
tanti esempi dispersivi e troppi commenti
che possono confondere...
Ti dico la mia esperienza: sono riuscito
a capire le funzioni ed i puntatori con il thinking c++: 
chiaro, semplice, conciso...peccato che sia solo in inglese...
Ciao

 ha scritto nel
messaggio news:pan.2003.05.18....@tele2.it...

Occhio che il link si spezza:
http://www.umbertosorbo.it/modules.php?name=Downloads&d_op=viewdownload&cid=
2
Ciao,
Cecco

 ciao
Io avevo iniziato con Java, ma non ero riuscito a capirci molto.
Sono passato al C++ (mi sto riferendo sempre ai manuali Deitel & D.) e come
per magia mi si è schiarito il java e ho capito anche il C++ (un pochino).
Comunque per me non ci sono esempi abbastanza utili, che ti aiutino a
comprendere le sottigliezze, ma sopratutto la potenza straordinaria del
linguaggio...credo che possa essere d'aiuto solo ai principianti come noi,
ma poi...sarà meglio passare ad altro...penso.

 ha scritto nel messaggio
news:2zyya.124796$3M4.2...@news1.tin.it...

Newsgroup: it.comp.lang.c++
Titolo: puntatori

Salve a tutti,
c'è qualcuno che mi può spiegare, in modo pratico, a cosa servono i
puntatori? E' da giorni che li studio ma non riescio ancora a capire il loro
compito in un programma...
Grazie a tutti

Dunque: i puntatori servono per varie cose, fondamentalmente per gestire in
maniera "esplicita" la memoria, e questo, tra le altre cose, permette di
simulare, in C ad es, il passaggio di parametri per riferimento. La loro
vera utilitŕ viene messa in evidenza quando si usano strutture dati che si
servono dei puntatori. Sostanzialmente essi permettono di usare la memoria
solo quando serve, allocando e deallocando a piacimento... un classico
esempio č un paragone fatto tra array e liste dinamiche. Immagina che tu
debba gestire ad es una rubrica per degli indirizzi di cui non sai la
dimensione a priori. Utilizzando gli array, in C++ una scrittura potrebbe
essere:
// Indirizzo sarebbe ad es. una classe con un campo per il Nome, uno per il
cognome e uno per l'email...
Indirizzo utenti[N];  // Con N costante intera non negativa ovviamente. Come
vedi, devi prefissare per forza la dimensione**, scontrandoti con due
problemi:
1) Se dichiari l'array di N dimensioni, e gli indirizzi (email ad es.) che
poi saranno inseriti sono di meno, tutte le rimanenti caselle vuote, saranno
li ad occupare spazio inutilmente.
2) Se tu hai piů di N indirizzi da memorizzare, i rimanenti, te li puoi
scrivere in un foglio di carta :) perchč la memoria non č stata allocata a
sufficienza in precedenza (del resto non puoi sapere la dimensione a
priori).
Con le liste dinamiche invece, tu non sei costretto ad allocare memoria
senza conoscere la reale dimensione, bensě, la allochi man mano che
inserisci un indirizzo e la deallochi quando esso non serve piů. In C++
qualcosa di simile sarebbe:
// La classe Indirizzo la devi avere comunque, e devi avere una classe
Lista, ad es. la chiamo List
// Metodo che inserisce un indirizzo nella rubrica
void add (Indirizzo ind) {
                .......
            List nuovo = new List(ind); // Con "new" indico di voler
riservare nuova memoria
                ......
}
// Metodo che elimina un indirizzo dalla rubrica
void del (Indirizzo ind) {
            delete ind  // Con "delete" indico di voler liberare la memoria
occupata da "ind"
                ......
}
Occhio che i metodi che ho scritto servono solo a darti un'idea, perchč nel
primo ad es, bisogna gestire il puntatore all'elemento successivo (e
precedente, a seconda se la lista č semplicemente o doppiamente linkata).
Nel secondo, bisogna invece scorrere la lista fino alla posizione precedente
a "pos" (un metodo č questo) e poi cancellarlo (con delete).
Spero di averti chiarito qualche dubbio, o almeno, di non avertene farti
sorgere di nuovi!
ciao
**
(In Java ad es questo problema non c'č, visto che gli array possono sempre
cambiare dimensione, e inoltre c'č un meccanismo di pulizia (garbage
collection) che dealloca la memoria automaticamente, ma meglio studiare C++
che ti rende un vero programmatore (hi hi hi, magari non č cosě, ma da
questo punto di vista č meglio di Java di sicuro!)
--
Luigi
Newsgroup: it.comp.lang.c++
Titolo: Librerie per creare finestre C++

Ipotizziamo di avere un computer con solo Windows XP o Vista e voglio 
avviare un programmino scritto in C++ sotto linux utilizzando la libreria Qt 
(o altra libreria).
Non avendo installato la libreria Qt sul mio computer,   la form 
(ipotizziamo che il mio programmino sia composto da una semplice form) non 
verrà visualizzata?
 
Possibile che la libreria Qt pesa circa 328 MB (download dal sito: Qt 
libraries 4.7.4 for Windows (minGW 4.4, 328 MB))?
 
Ciao
 
nero23 
 

 non verrà visualizzata?
 
Se per "avviare" intendi "lanciare l'eseguibile binario", allora non 
puoi eseguire quel programma nemmeno se hai installato la libreria Qt, 
perché compilandolo per Linux ha generato un formato eseguibile non 
accettabile da Windows.
Se invece per "avviare" intendi "compilare i sorgenti", allora credo che 
tu abbia bisogno di molto di più della libreria Qt: ti serve il 
compilatore C++ con le sue librerie, e l'SDK Qt, che è di circa 1.4 GB.
 
-- 
 
Carlo Milanesi
http://carlomilanesi.wordpress.com/
 

 da Windows.
 
 
Ho sbagliato.
Intendevo dire avviare l'eseguibile (programma.exe) compilaro su un altro 
computer (naturalmente con Windows Xp e le librerie installate).
 
La libreria wxWidgets pesa molto poco, significa che offre poco rispetto a 
Qt?
 
ciao 
 


Ciao,
non saprei dirti se wxWidgets offre poco rispetto a Qt, però posso
consigliarti di dare un'occhiata anche a "fulltick", 
http://www.fltk.org/
.
La libreria è cross-platform, leggera e inoltre è disponibile un
editor grafico per disegnare interfacce. La trovo davvero fantastica.
 
voidloop

 Qt?
 
Non e' che "significa". Comunque si, offre poco rispetto a Qt. Ma poi
voglio dire...  Il mio computer ha due dischi da 1 TB, per dire. 
 
Per inciso, per il funzionamento del programma, una volta compilato,
basta molto meno. Cioe' dipende dalle funzioni di Qt che usi: fai conto
che Qt offre praticamente "tutto" (a partire da un interprete interno
Javascript per lo scripting, per arrivare a primitive di networking).
 
-- 
-riko
http://www.enrico-franchi.org/
 
http://rik0-techtemple.blogspot.com/
Newsgroup: it.comp.lang.c++
Titolo: Problemi con Uindos

Sono un esperto di offis , (UORD,ECSEL,PAUER POIT)
ho dei problemi con UINDOS
Quando dal menu Avvio scelgo "Chiudi sessione"
mi schizza fuori un messaggio
"Error access violations 10F7 etc..."
Cosa puedo fare aora?

 Cosa puedo fare aora?
Riavvia in modalita' MS-DOS
scrivi:
format C:
premi invio
rispondi si alla domanda che ti verra' posta
premi invio
e' il problema sparira'
Il problema e' Uindos come al solito.
Ciao

 ho dei problemi con UINDOS
No. Hai dei problemi nel cervello, e' diverso.
Newsgroup: it.comp.lang.c++
Titolo: [Semi-OT] uso macchine multiprocessore con VC6

Temo di essere OT... nel caso lo fossi "troppo" per favore indicatemi
il gruppo giusto dove postare questa domanda :)
Innanzitutto chiarisco: mi è stato chiesto di "informarmi" riguardo ad
un
problema.
Nella ditta in cui lavoro abbiamo un programma sviluppato in Visual C++
6, e
questo programma dovrebbe cominciare a sfruttare "seriamente"
architetture
multicore, quando disponibili.
In particolare quello che vogliamo fare è lanciare una serie di thread
secondari da un thread principale: ognuno di questi thread elabora le
proprie cose, e quando ha finito avvisa il thread principale del
completamento dei lavori.
Al di là dei dettagli, ci servirebbe sfruttare un eventuale secondo
processore presente per fargli elaborare questi thread, dedicando in
pratica
un processore al thread principale, ed un altro ai thread secondari.
Quello che mi serve è capire come strutturare una applicazione per
fare
questo, o qualcosa di simile: occorre un diverso compilatore, ci sono
direttive particolari da utilizzare, ecc...
La cosa migliore, e meno gravosa per chi vorrà rispondermi, è
segnalarmi dei
siti e dei link a "risorse" che parlino di questo problema, visto che
su
google non riesco a trovare niente che si riferisca a quello che mi
serve...
Grazie a "chiunque" per l'interessamento!

Avete mai lavorato con i thread?
multiprocessore o macchine HT?
Se dici di usare VC++ la piattaforma è win, già documentato sulle API per il
multithreading?
Bye,
Raktzo

 
Mi inserisco con una domanda nella domanda... ma se io faccio delel 
semplici fork (o uso il multithread) parlo inmodo generico e scollegto 
dalla piattaforma (che sia un Unix / lInux o un windows) l'SO non 
dovrebbe magicamente preoccuparsi di seminare i vari thread sui vari 
processori a seconda del carico ..o e' una mia pia illusione?

 multicore, quando disponibili.
Il C++ non supporta la programmazione multithreaded ne' come linguaggio 
ne' nelle librerie standard.
Inoltre la programmazione multithreaded e' dipendente dal sitema operativo.
Pertanto questo newsgroup e' inappropriato per trattare questi argomenti.
Rivolgiti a it.comp.programmare.win32, dedicato alla programmazione per 
Windows a livello di API o di MFC.
Puoi anche guardare la libreria:
http://www.boost.org/doc/html/threads.html
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila

Grazie mille per la risposta :)

 il gruppo giusto dove postare questa domanda :)
...
Hai gią avuto varie risposte.
Io aggiungo solo che il threading ritengo zthread superiore a quanto offerto
da boost.
-- 
  Giuseppe "Cowo" Corbelli \/\ My software: 
http://cowo.yoda2000.net
    **ANTI-SPAM** -- **Substitute IHATESPAM with cowo to reply by mail** 
-<! Gesu' e' morto per i nostri peccati.  Non rendiamo inutile il suo
		martirio non commettendone !>-

Grazie mille a tutti per le risposte!
Newsgroup: it.comp.lang.c++
Titolo: Generare testo DA una regular expression

Salve a tutti...
generalmente le regular expression si utilizzano per vedere se una
certa stringa matcha tale regular expression...
a me serviva fare il contrario, cioè data una regular expression
generare le stringhe (casualmente) che matchano quella regular
expression...
c'è qualche tutorial per fare ciò in C++, oppure qualche libreria
(free)?
]\/[ad]\/[age
"Un Maestro nell'arte della vita, non fa nessuna precisa distinzione tra lavoro
e gioco, fatica e riposo, mente e corpo, educazione e ricreazione. 
Insegue semplicemente la sua visione di Eccellenza attraverso qualunque cosa sta facendo e lascia agli altri decidere se sta lavorando o giocando. A lui sembra sempre che sta facendo entrambe le cose." - Anonimo.
.-~-.-~-. 
www.madmagelab.cjb.net
 .-~-.-~-.

 (free)?
Tutorial????
A me sembra un algoritmo abbastanza banale... generi le stringhe semi-
casulamente (facendo un minimo di attenzione al pattern), poi controlli se 
veramente il match č ok ed in quel caso ottieni ciň che vuoi...
-- 
Luc.
Newsgroup: it.comp.lang.c++
Titolo: Disperata disperatissima....

Casomai a qualcuno fosse sfuggito il mio grido di aiuto
ripropongo il mio appello di ieri ....
Sono una inesperta programmatrice in Visual Basic, pentitasi e convertitasi
di recente al C++ Builder.
Sto trovendo grosse difficoltà a trovare testi o manuali più esaurienti
della Guida Ufficiale e l'help in linea è una vera schifezza...
Mi risulta ostica la gestione Database:
non trovo esempi di utilizzo della proprietà sql di Tquery, si può usare
senza impostare la proprietà params?
Il database da gestire in condivisione è abbastanza grosso e di tipo
Dbase.Conviene usare componenti ttable o tquery?
Si può una scheda master/dettaglio usando ttable e non tquery?
Ho provato a utilizzare la prorietà mastersource ma non riesco a collegare
le 2 tabelle tramite Field editor....
Devo usare necessariamente i controlli per database tipo dbedit?
Mi basterebbe anche del codice di esempio...
Sono davvero disperata, vi prego aiutatemi!!

 Mi risulta ostica la gestione Database...
Le domande che fai mi sembrano un tantino generiche e/o confuse, è un po' difficile rispondere, o
forse la risposta sarebbe un lungo articolo sulla programmazione con database in BCB. 
Ti suggerisco di fare una domanda alla volta (cominciando dalle cose più semplici), specificando con
la maggior precisione possibile i termini del problema, in particolare il risultato che vuoi
ottenere e le
difficoltà che incontri, magari includendo esempi concreti di dati e/o codice.
Ciao
Paolo

Newsgroup: it.comp.lang.c++
Titolo: Ancora segmentation fault

Domanda a bruciapelo:
che cosa potrebbe indicare un errore di segmentation fault che avviene
subito dopo la chiamata di una funzione del tipo
   void process (char+ACo- stringa1, char+ACo- stringa2, char+ACo- stringa3)
cioe' in pratica all'inizio del corpo della funzione stessa?
Thanx a lot,
Paolo



Non riesco a leggere bene il tipo dei parametri, ma se sono dei char* allora
probabilmente potrebbe trattarsi di un puntatore non correttamente inizializzato
oppure utilizzato scorrettamente dalla funzione.
Dovresti provare a tracciare l'esecuzione...
Paolo
----------------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
  e-mail: 
mar...@cli.di.unipi.it
 
----------------------------------------------------------
Newsgroup: it.comp.lang.c++
Titolo: Deleting copies of object destroys other copies' contents

hey all, I have a question
If I have an object with a bunch of pointers to stuff, and the destructor of
that object goes and destroys all the pointers too, then what happens when I
have a copy of that object, where only the values of the pointers were
copied, and then the copy gets destroyed?  How do I save the data the
pointer pointed to without making it invalid? (and hopefully without having
to write an operator= for it?
For instance
class Object
    {
    int *ptr;
    ~Object() {delete ptr;};
    };
Object obj1;
obj1.ptr = new int;     // say it now == 0x1234567
Object *obj2 = new Object;
*obj2 = obj1;    // now obj2->ptr == obj1.ptr == 0x1234567 via
member-to-member (compiler-generated) copy
delete obj2;    // this deletes ptr and makes *ptr bad data
obj1.ptr = ?????? // under MSVC this actually becomes == 0xafafafaf for easy
identification  I guess.
Is there an easy way to save the value of ptr, or to copy the contents of
obj1.ptr to obj2->ptr without rewriting the operator= function?
thanks
ms

 wrote in message ...
