mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: CORSI GRATUITI DI JAVA/ORACLE

Vi offro un corso gratuito di come postare sul newsgroup adatto.
Mauro

                                            4 G.L. SOFTWARE S.R.L.
                                                Viale Monza,196
                                                   20128 Milano
4 G.L. Software S.r.l. seleziona giovani con buone conoscenze d'informatica
per un corso gratuito di programmazione Java/Oracle mirato all'inserimento
nel mondo del lavoro.
Un nostro funzionario e' a disposizione per qualsiasi chiarimento in merito.
Il corso iniziera' il 05/02/2001 dalle ore 9:30 alle ore 17:30 da Lunedi' a
Venerdi' e terminera' il 05/04/2001.
Inviare C.V. dettagliato per mail all'indirizzo: 
4...@galactica.it
, si prega
di indicare rif: Java.

Newsgroup: it.comp.lang.c++
Titolo: Funzioni C++ chiamate da codice C

 /'      `'`vv'`'      `\
** Email replies to 
md7...@mclink.it
 **
visit my homepage at: 
http://www.volftp.tin.it/IT/IT/ITALIANI/rullo/index.htm
 

Non so se abbiano previsto l'inverso.
Non puoi chiamare _da C_ il metodo di una classe -- devi "vestirlo"
da "funzione libera", con uno strato di C++ *non* inline:
extern "C" 
int 
DD_SetCooperativeLevel(LPDD pDD)
{
    return pDD->SetCooperativeLevel();
}
con le ovvie modifiche per tipo di ritorno, ev. argomenti, ecc.
Cio` detto, che bisogno hai di compilare la tua roba come
codice C?  Usa il C++ anche se il tuo codice *e`* C, non
dovresti avere grossi problemi...
Alex
Newsgroup: it.comp.lang.c++
Titolo: Knuth

Ciao a tutti.
Sapete dirmi se esiste una versione in italiano dei libri di Knuth?
Almeno di The Art Of Computer Programming.
Grazie,
Dome


NO! l'ho cercata ma mai trovate!
Luigi

> NO! l'ho cercata ma mai trovate!
Ah ok, grazie... mi era stato detto che esisteva una versione italiana, ma
probabilmente ho capito male :(
Dome

Newsgroup: it.comp.lang.c++
Titolo: Richiamo funzione[sono un principiante]

Salve! Provengo da Delphi, e sto imparando il c++. Attualmente sto lavorando
sul compilatore della borland. Mi chiedevo come fare a gestire le mie
funzioni: i dubbi sonO:
1:Devo fare delle void, delle fastcall ,  o che altro?L'help in linea non è
molto esplicativo
2:Come faccio a richiamarle da altre funzioni?
Esempio tipo con un bottone
void __fastcall Prova
{
Form1->Caption = "Pippo"
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Prova //Sta qua il mio problema!Come faccio a richiamare Prova? Grazie!
}
Ciao
Jiz

 }
  Prova();
ciao

Newsgroup: it.comp.lang.c++
Titolo: Re: delete di NULL

 qualche puntatore che punti a NULL?
è prevista e non fa nessuna operazione.
-- 
"Siamo una generazione di uomini cresciuti dalle donne, mi chiedo se 
un'altra donna è veramente la risposta che ci serve"

 qualche puntatore che punti a NULL?
Lo standard ISO 1998 dice chè nel C++ viene fatto in automatico
il controllo se il puntatore è NULL. almeno così mi ricordo!!

Newsgroup: it.comp.lang.c++
Titolo: aiuto per formula matematica

scusate ma mi trovo a dover programmare in c++ per la tesi e ho un
problema nell'inserire una formula matematica.
Come faccio ad elevare a potenza un coefficiente?
E per fare la radice quadrata?(devo elevare alla 0.5 oppure c'č un
altro modo?)
Grazie a tutti...

 Grazie a tutti...
Ciao,
usa queste funz. :
#include <math.h>                                              // importante
!
double pow(double x, double y);                         // potenze
long double powl(long double x, long double y);   // potenze
double sqrt(double x);                                         // rad.
quadrata
long double sqrtl(long double x);                          // rad. quadrata


In C++ Standard basta usare lo stesso nome pow, e sqrt
per argomenti di tipo float, double e long double (grazie
all'overloading).
Manlio Perillo

 Grazie a tutti...
EXP(3)              Linux Programmer's Manual              EXP(3)
 
NAME
       exp,  log, log10, pow - exponential, logarithmic and power
       functions
 
SYNOPSIS
       #include <math.h>
 
       double exp(double x);
 
       double log(double x);
 
       double log10(double x);
 
       double pow(double x, double y);
  [....]
SQRT(3)             Linux Programmer's Manual             SQRT(3)
 
NAME
       sqrt - square root function
 
SYNOPSIS
       #include <math.h>
 
       double sqrt(double x);
 
DESCRIPTION
       The  sqrt()  function returns the non-negative square root
       of x.  It fails and sets errno to EDOM, if x is  negative.
 

 Grazie a tutti...
-- 
Ciao, gengisdave
http://digilander.iol.it/gengisdave
Newsgroup: it.comp.lang.c++
Titolo: problema coi puntatori a funzione

Sto creando una classe nodo generica, che poi utilizzerò per una lista. Ho 
la necessita di comparare il contenuto di due nodi per verificare se 
contengono lo stesso dato (nodi uguali), ma la funzione da applicare 
dipende dal dato contenuto (semplice '=' per int 'strcmp' per const char). 
Quindi ho pensato di risolvere il problema coi puntatori a funzione: si 
crea un nodo di un certo tipo, si crea una funzione adatta per verificarne 
l'uguaglianza e l'oggetto nodo utilizza sempre tale funzione. Questo è 
quello che ho scritto fin'ora:
template <class DATA>
class Node
{
typedef int(*CFunc)(DATA *o_this, DATA *other);
public:
        void setCompare(CFunc func){CompFunc = func;};
        ....
protected:
        int (*CompFunc)(DATA *o_this, DATA *other);
        ....
};
La prima domanda è:
-il typedef mi è necessario per compilare (altrimenti ottengo errore su 
setCompare), ma così non creo una variabile privata CFunc?
Nel main ho:
{
        Node<const char *> prova();
        prova.setCompare(strcmp);
}
Con il g++ ottengo:
request for member 'setCompare' in 'prova()', wich is non-aggregate type 
'Node<const char *>()()?.
Che vuol dire?
Come posso risolvere il problema?
Grazie.

         Node<const char *> prova();
Togli le due parentesi. Così:
  Node<const char *> prova;
Con le due parentesi stai in realtà dichiarando una funzione che 
restituisce un oggetto di tipo 'Node<const char *>' (come è espresso, forse 
in modo un po' criptico, dal messaggio d'errore che hai riportato).
Max

Grazie per la risposta, ma ho ancora qualche problema
-ho modificato la definiziione di setCompare(int (*func)(DATA*,DATA*))
ed in effetti il typedef non serve.
-In effetti dovevo togliere le parentesi.
-Nel main.cpp ho definito:
int comp(char *a, char *b){return strcmp(a,b);};
e nel main:
        Node<char *>prova;
        int (*f)(char*,char*);
        f = comp;
        prova.setCompare(f);
mi da il seguente errore:
invalid conversion from 'int(*)(char*,char*)' to 'int(*)(char**,char**)'
Facendo delle prove ho visto che elimino l'errore in due modi:
-dichiaro Node<char> prova; (ma non voglio nodi di char)
-oppure int comp(char **a,char **b)[return strcmp(*a,*b);}; e
int (*f)(char **,char**)
Come posso risolvere il problema, ma ancora prima, perchè ottengo questo 
errore?
Grazie ancora

 invalid conversion from 'int(*)(char*,char*)' to 'int(*)(char**,char**)'
Se DATA è 'char*' è naturale che la signature del puntatore a funzione non
corrisponda con quella di 'strcmp'. Non capisco perché la cosa ti sorprenda.
Ad ogni modo, trattandosi di una classe template, se la funzione che
effettua il confronto non deve cambiare in fase di esecuzione, ti suggerirei
di adottare l'approccio della libreria standard: classe funzionale come
argomento del template (vedi, ad esempio, le classi std::map<> o
std::set<>).
Incidentalmente: non so cosa ti prefiggi di fare, ma sospetto che invece del
'char*' tu voglia in realtà usare un 'std::string'.
Max
Newsgroup: it.comp.lang.c++
Titolo: template list di oggetti,discriminare metodi?

Creo una lista dinamica utilizzando la STL:
list<tipo>* l;
l=new list<tipo>;
cout<<l->size();
ottengo in stampa la dimensione della lista.
Ma sei io creo una lista di oggetti quando invoco il metodo size() il
compilatore va a cercare tra i metodi degli oggetti in lista!!!
Come risolvere l'ambiguita' l->metododilista ed l->metodioggettilista???

autorisposta
con l'identificatore del vector accedo ai metodi del vector
con l'iteratore accedo ai metodi degli oggetti.
in realta "l" era un 
list<tipo>* lista;
list<tipo>::iterator l=lista->begin();
mentre nel post precedente (il cui codice e' correto) lo dichiaravo come
vector.
lista->metodivector
l->metodioggetti


 cout<<l->size();
Perchè hai allocato dinamicamente la std::list?
Ciao
Newsgroup: it.comp.lang.c++
Titolo: Debug Error su VC++ 4.0, sono preoccupato...

Questa è già la seconda volta che mi capita: durante l'esecuzione, appena mi
capita un'istruzione delete, quasi sempre salta fuori questo messaggio: la
tipica croce bianca su cerchio rosso e accanto:
Debug Error!
Program: [il mio programma]
DAMAGE: After Normal block (#22) at 0x007701B4
(press Retry to debug the application)
e tre pulsanti Termina, Riprova e Ignora. Immediatamente dopo, vedo nella
finestra Output "memory check error at 0x007701B6 = 0x00, should be 0xFD.".
La prima volta era quasi identica a questa, si trattava solo di un altro
programma e riportava un indirizzo diverso, non molto lontano da quello
sopra. Ho subito pensato a un "buco" nelle mie vecchie SIMM da 60ns (due
coppie, 16M+32M), ma allora perché né il BIOS (all'avvio) né HIMEM (quando
controlla la memoria) dicono niente?
Non consigliatemi di cambiare RAM, non ho neanche gli slot DIMM e a cambiare
mother non ci posso neanche pensare.
Riporto le caratteristiche del mio pc: P200MMX, RAM 48M, madre Abit PR5, hd
Maxtor 2.5G (con Winzozz98 che si blocca ogni venti minuti e un Linux
immacolato e santo), video Matrox Mystique 220 2M, audio SB Awe32 modello
1995 non PnP e connettore IDE, il tutto (tranne l'audio) comprato da
Computer Union nell'ottobre 97.
--
E.G. er Cicca
er_c...@freemail.it
ICQ # 18872702
Per rispondere, sostituire @
usa.net
 con @
freemail.it
To reply, replace @
usa.net
 with @
freemail.it

mother non ci posso neanche pensare.
Il 99% delle motherboard non da problemi riguardo al montaggio di dua banchi
di memoria SIMM di dimensioni diverse, ma esistono delle eccezioni. Comunqe
non mi sembra eccessivamente preoccupante ciò che ti è accaduto, dato che
l'errore si è presentato solo due volte. Tieni presente anche che la
vicinananza dei due indirizzi potrebbe essere del tutto casuale.
Ciao, Giuseppe
---------------------------------------------------------------------------
_Guybrush su IRCNet canale #programmazione
---------------------------------------------------------------------------

 
hai installato  i service pack del compilatore?
sei sicuro di non aver fatto casino coi puntatori?
magari imposta _STRICT_ per essere più sicuro.
comunque se non fosse nessuna delle due precedenti sappi che anche a me
il VC4.0 dava degli errori arbitrari che non si ripresentavano al
successivo riavvio, e penso che cio' fosse merito della granitica
stabilità di abbaino del cesso 98.
se hai la possibilità ti consiglio di passare a una versione successiva.
ciao
Alessandro Temil
mi...@programmer.net
Newsgroup: it.comp.lang.c++
Titolo: Problema vector

Ciao a tutti, scusate la domanda che magari può essere banale.
Ho una funzione che riceve come argomento un puntatore a un vettore double:
int f(vector<double> *test);
Come faccio ad accedere ai singoli valori contenuti nel vector?
Ovviamente la scrittura:
double a=test[0];
mi da errore, ma anche:
double a=test[0];
Grazie a tutti in anticipo per l'attenzione. 

 double a=test[0];
Che è identica alla prima. 
 
 double a = (*test)[0];
Max

 Max
Ciao,
    Beppe. 

 double a=test[0];
Questo probabilmente perche' le due istruzioni sono identiche :-)
double a = (*test)[0];
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: Explorer e ActiveDesktop

Salve a tutti,
    essendo anch'io un appassionato di programmazione C++, so che nessuno
piu' di un programmatore C/C++ deve conoscere a menadito Windows; per questo
provo a postarvi un messaggio che ho postato anche su altri NG e che
riguarda la personalizzazione di Windows attraverso IE4 e html. Tra l'altro
credo che la cosa potrebbe interessare a molti:
    come sapete IE4 introduce degli aggiornamenti all'interfaccia di W95,
che dicono siano presenti anche in W98. Uno di questi e' la possibilta' di
visualizzare le cartelle di Explorer come pagine web, e quindi di
personalizzare queste pagine. La pagina personalizzata si basa su un modello
hypertext con estensione htt che e' un normale doc html (automatizzato con
JavaScript!!!); il cuore di questa pagina html e' un controllo che mostra la
lista dei file, ed e' contrassegnato da un tag come questo:
  <object id="FileList" border=0 tabindex=1
classid="clsid:1820FED0-473E-11D0-A96C-00C04FD705A2"
  </object>
ho provato ad aprire il suddetto modello htt con IE4 (anziche' col semplice
Explorer) e il risultato e' che non visualizza nessun controllo con la lista
dei files!
    Ora la mia domanda e' la seguente:
Qualcuno ha idea di come sia possibile visualizzarlo? Esistono altri
controlli analoghi che si possono visualizzare?
    Approfitto per fare una seconda domanda che mi e' sorta nel frattempo,
riguarda l'ActiveDesktop:
    in W95+IE4 o W98 si puo' impostare come sfondo del desktop una pagina
html. Tutto molto bello, ma sarebbe ancora piu' bello se si potesse
organizzarlo come un vero e proprio sito Web. Io ci ho provato, ed ecco i
casini che mi sono venuti fuori:
    1. Link ad un file: mi apre la finestra con la richiesta salva/esegui;
e' possibile in html o script vari dirgli di aprirlo direttamente?
    2. Link a pagine html: le apre in un nuova istanza di IE; sarebbe bello
se si potessero aprire sempre sul desktop. E' possibile?
    3. Si puo' dividere il desktop in piu' frame: ma un link ad un'altra
pagina lo apre come nel punto precedente; e se uso _top? anziche' al _top,
apre la pagina nel frame corrente (contravvenendo allo standard html, o
no?). E se io voglio veramente aprire una pagine nel _top?
grazie in anticipo,
    Al

Togli una curiosità: ma chi te lo fa fare di usare MS Tumore explorer 4.0 ?
Io ho usato l'active desktop per 15 giorni e poi come tutte le persone che
conosco l'ho tolto.
Tu, oltre a sopportare il terribile rallentamento di Windows, vuoi
addirittura organizzare il computer come un sito?Perchè?
Newsgroup: it.comp.lang.c++
Titolo: Aiutatemi x favore!!!

Scusate ma sono sempre io...
Sono alle prime armi quindi...:
1) come si fa ad arrotondareun double alla cifra decimale che io voglio?
  mi servirebbe qualcosa tipo  round(double,cifradecimale);
2) per l'output su video di un double o un int molto grandi come posso
decidere il formato di stampa? nel c vi erano quei (%5 ecc) come si fa col
c++?
Grazie
Giovanni

 c++?
Con il manipolatore std::setprecision() di cui sopra e con il setw().
EMG

Anche semplicemente con una macro
#define ROUND(x)   ((int)((x) + (((x) > 0) ? 0.5 : -0.5)))
Ciao.
Stefano
-- 
Posted from [62.212.8.2] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

#define ROUND(x)   ((int)((x) + (((x) > 0) ? 0.5 : -0.5)))
Perche' queste brutture ??
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff

 }
Non e' detto che funzioni come ci si aspetta, perche' l'espressione 
long( num * mul + 0.5 ) / double( mul )
puo' non avere una rappresentazione esatta.
Ciao,
Nicola

 puo' non avere una rappresentazione esatta.
Potresti allora consigliarmi come correggere l'esempio? E magari anche
come provare in pratica che non funziona? Altrimenti mi risulta
difficile controllarlo.
EMG


Il problema e' che, come sai, i tipi in virgola mobile sono in grado di
rappresentare esattamente solo un numero limitato di numeri decimali.
Questo fa si che assegnando ad un float, double, long double un valore
arrotondato, questo puo' essere a sua volta arrotondato al numero
rappresentabile piu' vicino, con conseguente "riapparizione" di cifre
decimali indesiderate.
Il tuo procedimento e' corretto, ma funziona nel modo desiderato solo se
salvi il valore ottenuto in un "recipiente" che permetta una
rappresentazione esatta: il linguaggio mette a disposizione solo le
stringhe, ma si possono pensare classi che rappresentino esplicitamente
la codifica decimale, o rappresentazioni a dimensione variabile.
In pratica pero' l'arrotondamento e' usato quasi solo per stampare o
visualizzare numeri direttamente.
Ciao,
Nicola

 visualizzare numeri direttamente.
Quindi, dato che l'esempio termina con
int main()
{
    for ( int i = 0; i < 8; ++i )
    {
        std::cout << std::setprecision( 10 )
                  << dround( 123.12345678, i )
                  << std::endl;
    }
}
devo dedurre che, in questo senso, funzionerà sempre bene?
EMG
Newsgroup: it.comp.lang.c++
Titolo: Eliminare doppioni da vettore

Salve,
ho un quesito abbastanza semplice.
Ho un vettore di strutture, ogni struttura è composta da tre double ed
un int che sarebbe il contatore.
Per ogni elemento del vettore, devo cercare gli eventuali doppioni, e
se li trovo eliminarli ed incremetare il contatore dell'unica copia
rimasta...
esiste già qualche libreria che può aiutarmi in questo? Intendo tra
la standard...
grazie mille

 
1) c'è std::unique() che elimina gli elementi doppi
oppure
2) al posto di std::vector usa std::set
in questo modo non avrai il problema di eliminare i "doppi" perché set 
elimina il problema alla radice, anche se devi risolverti il discorso 
dell'incremento del contatore in altro modo... magari contando il numero 
di elementi prima e dopo il set o magari usando il metodo find(), vedi 
un pò tu...
Guarda la dovcumentazione della STL è probabile che uno di questi due 
sistemi faccia al caso tuo!
ciao.

Newsgroup: it.comp.lang.c++
Titolo: accedere all'elemento precedente un iteratore

Se ho un
	T::iterator i;
e voglio accedere all'elemento precedente a quello puntato da i, senza 
modificare i, come posso fare? L'unica cosa che mi viene in mente è:
   {
	T::iterator j=i;
	j--;
	j->accedi();
   }
si può fare qualcosa di più pulito? Qualcosa tipo:
	i.previous()->accedi();
E.

 si può fare qualcosa di più pulito?
Non sono un grande esperto (anzi, posso dire che non ne capisco una
cippa), ma azzardo qualche idea:
(j-1)->accedi();
non funziona?
Enrico

?manu* ha scritto:

Forse ho capito male io, ma ... se è definito operator- per 
quell'iteratore, dovresti poter fare:
T::iterator j = (i-1);
j.accedi();
supponendo che accedi() torni un int, potresti fare:
int myint = (i-1).accedi();
--
Clyde

Enrico Bassetti ha scritto:

Uh! Sì, effettivamente sembra funzionare! Non so perché ma ero convinto 
che non funzionasse...
E.

         i.previous()->accedi();
No.
Ciao,
Nicola

?manu* ha scritto:

In Boost c'e' una template di funzione che ti puoi copiare anche se non 
installi Boost (invece di "previous", l'hanno chiamata "prior"):
http://www.boost.org/doc/libs/1_36_0/libs/utility/utility.htm
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila
Newsgroup: it.comp.lang.c++
Titolo: puntatore che tiene conto di un punto su un file

Ho un problema:
vorrei aprire un file in lettura in + riprese. Ogni volta pero dvorei
partire dal punto successivo di quello precedente.
Non ho idee...
-----------------------------------------
La vita e' l'opera di un regista mediocre
e di un cattivo sceneggiatore

 Non ho idee...
Le "piu` riprese" sono run successivi del tuo programma?  In
questo caso devi memorizzare (in un file ausiliario, in un qualche
database che stai comunque usando, in una registry, ...) la
informazione di "sin dove ero arrivato" (quella che ti torna ad
esempio la funzione-membro tellg di std::istream nello standard
C++) e usarla per riposizionare il file al punto giusto (ad esempio
con la funzione-membro seekg di std::istream).
Puoi fare questa memorizzazione e ripristino nel distruttore e
rispettivamente nel costruttore di un tuo oggetto globale ad
hoc, per automatizzare il processo, ma non te lo consiglio come
idea generale: meno oggetti globali si hanno e meno cose si
fanno nei loro ctor/dtor, meglio e`.  Semplicemente fai queste
cose all'ingresso e all'uscita di main o altri simili punti.
Alex

 Non ho idee...
Potresti lasciarlo aperto. Oppure memorizzarti da qualche parte l'ultima
posizione.
EMG
Newsgroup: it.comp.lang.c++
Titolo: Sapere se siamo in DOS o Windows

Ho creato un applicazione che lavora sotto DOS...
Ho la necessità di sapere all'interno della mia applicazione se sono in
DOS o in Windows in una sessione DOS...come posso fare ?
Grazie!

DOS o in Windows in una sessione DOS...come posso fare ?
Il DOS gira sotto command.exe, in Windows sotto cmd.exe, ma non ne
sono sicuro al 100%, dipende da come è langiato il tuo programma.
L'environment è certamente diverso, ad esempio in Windows trovi nella
finestra aperta da cmd.exe (perché il DOS non esiste) la variabile:
windir=C:\winnt
che in DOS ha poco senso.
Ma dovresti fare un test su tutte le più recenti versioni di Windows e
fare un confronto.

 inDOS o in Windows in una sessione DOS...come posso fare ?
Sono certo che sulla "Ralph Brown's Interrupt List" ci sia qualcosa a riguardo.
Io farei un check sulla disponibilita' dei servizi DPMI (Dos Protected Mode Interface) che sono di solito abilitati da windows.
Credo che tra i servizi offerti da DPMI ce ne sia uno che dica chi e' il provider dei servizi stessi.
Ciao,
Marco
-- 
I'm trying a new usenet client for Mac, Nemo OS X.
You can download it at 
http://www.malcom-mac.com/nemo

 sono sicuro al 100%, dipende da come č langiato il tuo programma.
La shell DOS si chiama command.COM, come quella dei windows della serie 3.x e 9x: Windows 3.1, Windows 3.11 for Workgroups, Windows 95 (inclusi b e c), Windows 98 (anche SE) e Windows ME. Peraltro, queste serie di Windows partono da DOS (opportunamente nascosto), aggiungendovi servizi (DPMI e altri).
--


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

Salve a tutto il NG.
Volevo sapere se era possibile scaricare controlli ActiveX da qualche parte.
Se la risposta è affermativa mi indicate il sito per favore.
Grazie
Simone

> Volevo sapere se era possibile scaricare controlli ActiveX da qualche
parte.
Cosa c'entra ActiveX con 'sto newsgroup...


Ti rispondo molto brevemente, perché probabilmente non sai che si possono
aggiungere i controlli ActiveX in VC++.
Mi serviva trovare degli ActiveX.

 ActiveX.
Quello che intendeva dire è che questo ng tratta di programmazione in c++
standard e NON di programmazione sotto win.
Rivolgiti per cui a it.comp.programmare.win32
Cmq ce ne sono a miriade di siti a cominciare da 
www.active-x.com
  :)
Fai una ricerca su google e ne troverai finchè vuoi..
Ciao ciao,
Alex
-- 
-----------	
email: el_co...@TOGLIQUESTOlibero.it
icq: 132581870
-----------
Newsgroup: it.comp.lang.c++
Titolo: I/O File

Sono alle prime armi con il C++.
Posseggo VC ++5.0.
Desidererei fare output di dati su file da una applicazione DIALOG BASED.
Se definisco un oggetto CFile XXX in modeWrite, ogni volta che scrivo
qualcosa, me lo ritrovo sempre all'inizio del file.
Mi piacerebbe poter scrivere nel file in modalità APPEND come si fa in VB,
magari separando i campi da un carattere conosciuto in modo da semplificare
la lettura.
Ho provato anche a definire un tipo CArchive ar(XXX, CArchive::store) ma ho
ottenuto lo stesso risultato.
Qualcuno mi aiuta?
Grazie anticipatamente.
Gianmarco.

 Qualcuno mi aiuta?
Dovresti spostare il "puntatore" di scrittura in fondo al file usando
una SeekToEnd, funzione membro di CFile.
Cito dall'help della SeekToEnd:
" ...Sets the value of the file pointer to the logical end of the file.
SeekToEnd() is equivalent to CFile::Seek( 0L, CFile::end )..."
Ok?
-- 
================
       _/
    _/_/_/
     _/
    _/  _/
    _/_/
tec...@login.it
================
Newsgroup: it.comp.lang.c++
Titolo: Punto decimale nel locale corrente

Ciao a tutti,esiste un modo standard per sapere qual'è il punto decimale
definito dall'implementazione corrente? Questo mi servirebbe per
utilizzare la atof() a prescindere dal tipo di punto decimale che l'utente
utilizza (virgola o punto devono essere entrambi considerati punto
decimale)
Grazie per l'attenzione

Yes <y3...@SPAMkatamail.com> writes:

a che scopo?  senza usare atof(), anticaglia del C, il C++ standard ti
permette di tradurre direttamente la string in numero in maniera
indipendente dal locale impostato.
MLO@mlinux 27 $ cat foo.cxx
#include <iostream>
#include <locale>
#include <sstream>
int main() {
  // setto il locale italiano.  normalmente basta un
  // inquiry per ritrovare qual'e' quello corrente.
  std::locale l("it_IT");
  std::istringstream s("123,456");
  s.imbue(l);
  double d;
  s >> d;
  std::cout << d << std::endl;
}
MLO@mlinux 28 $ g++ -std=c++98 -pedantic -W -Wall -o foo foo.cxx && ./foo
123.456
MLO@mlinux 29 $
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Dept. of Physics, Univ. of Padova, Italy              ROT13: 
ybe...@cq.vasa.vg

   std::locale l("it_IT");
Ma queste sigle sono standardizzate?
Io ho notato differenze tra WinXP e Linux usando lo stesso compilatore e 
quindi la stessa implementazione dell'STL (GCC 3.3, mingw su win).
Non ricordo se su win o su linux la sigla era "it_italian" invece che 
abbreviata come nel tuo codice che quoto.
In pratica per fare quello che chiede il poster originale io impostavo 
la locale a "C" (quella standard, con il . come separatore) e convertire 
la , in punto per le stringhe che arrivavano con l'altro simbolo :)
Bye,
  Gabry

 
In effetti, conosco il C meglio del C++ ... cacchio, c'è un paragrafo
intero sul Stroustrup che parla del <locale>...mi era sfuggito..vado
subito a studiarmelo...denghiù!

(l);
    std::cout << n.decimal_point() << '\n';
  }
}
Ciao,
Nicola

 la , in punto per le stringhe che arrivavano con l'altro simbolo :)
Barbaro! :-)
E se io, porca l'oca, non usassi né il punto né la virgola ma il punto
esclamativo ostrogoto?
--
Cingar
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

No, non lo sono.
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: Inizializzazione classi virtuali

Salve a tutto il NG. Questo il primo post nel NG ed è una richiesta di
aiuto:-)
Il problema è questo: mi serve una classe base (eventualmente anche
astratta) che possa essere inizializzata da una classe derivata (Derivata1)
e vista da un'altra classe derivata (Derivata2).
Ho provato con le righe sottostanti, ma non riesco a richiamare il
costruttore Base(int x) dall'oggetto b; mentre ciò avviene dall'oggetto a.
Chi volesse cortesemente aiutarmi....
Ciao e grazie.
 class Base {
  public:
   int n;
   Base(void){};
   Base(int x):n(x) {}
   int fb(void) {return n;};
 };
 class Derivata1:virtual public Base {
  public:
   Derivata1(void);
   Derivata1(int x);
 };
 class Derivata2:virtual public Base {
  private:
  public:
 };
 class Derivata3:public Derivata1, public Derivata2 {
  private:
  public:
 };
void main(void)
{
 Derivata1 a;
 Derivata3 b;
 int x;
 x=a.fb();
 x=b.fb();
}
Derivata1::Derivata1(void)
:Base(2)
{
 /*n=1;*/
}
Derivata1::Derivata1(int x)
:Base(x)
{
}

    Base(void){};
Attenzione, in questo caso n e` non-inizializzata, quindi usandola
hai *undefined behaviour* (probabilmente non ti succede niente,
ma se il compilatore invece ti riformatta il disco fisso dopo avere
mandato una mail di insulti alla tua ragazza, tecnicamente e a
rigor di standard ha ragione lui:-).
Alex

         senza tutti questi vincoli).
Nel mio caso non posso perchč voglio passare dei parametri.
Mi pare una mancanza per un linguaggio cosě aperto :-(
Comunque ti ringrazio Alex sei stato molto gentile e competente
naturalmente, ho letto molti post e i tuoi sono sempre ottime spiegazioni.
Ciao Roberto.

 Mi pare una mancanza per un linguaggio cosě aperto :-(
Prova un pochetto a progettare un linguaggio diverso, in
cui la costruzione delle classi basi virtuali debba invece
avvenire in modi diversi piuttosto che non da parte della
classe piu` derivata, e poi mi saprai dire.
Suggerisco caldamente il testo "Inside the C++ Object
Model", di Lippman, per approfondimento di questi temi.
Alex
Newsgroup: it.comp.lang.c++
Titolo: Compilare con GNU-Win32.

---------------------------------------------------------<

Per compilare il codice sotto windows, è giusta la riga di comando che avete
trovato, ossia: gcc nomefile.c  -lnomelibreria -Wl,-subsystem,windows
(oppure gcc -o nomefile.exe nomefile.c ...).
es. "gcc test.c -luser32 -Wl,-subsystem,windows".
Questa è la sintassi corretta. Se con il vostro codice non funziona, è
probabile che non abbiate indicato le librerie a cui si riferisce il vostro
sorgente. Per esempio se utilizzate della grafica, è necessario includere la
libreria - gdi32 -. Quindi la riga di comando sarà:
gcc test.c -luser32 -lgdi32 -Wl,-subsystem,windows.
E' vero, in questa versione non è incluso un compilatore di risorse.
Avete bisogno del programma - res2coff.exe -, che potete scaricare
facilmente navigando tra i link del sito principale.
Sarebbe anche una buona scelta, scaricare il compilatore - egcs mingw32 (non
mi ricordo esattamente il nome) -, con il quale potrete realizzare programmi
indipendenti dalla libreria - cygwin32.dll - e in cui è presente il
compilatore di risorse - windres.exe -.

Cygnus.
Preso in considerazione lcc? Ha un buon IDE, pero' compila solo C, ed
e' instabile. Almeno e' semplice e leggero, e i tool di supporto sono
interessanti.
(Elimina il papero per le repliche)

 compilatore di risorse - windres.exe -.
 Io ho scaricato Minimalist GNU-Win32 version 0.1.4, però temo che al suo
interno non ci sia nessun WINDRES.EXE (l'ho scaricato almeno da un mese) (:-((
Ad ogni modo, non sono riuscito a Compilare lo stesso "famoso" esempio
configurando il sistema GNU-Win32 perchè, con gli stessi parametri, mi dava i
seguenti errori:
  C:\mingw32\lib\crt0.o(.text+0x5):crt0.c: undefined reference to `_CRT_glob'
  C:\mingw32\lib\crt0.o(.text+0x19):crt0.c: undefined reference to
`__GetMainArgs'
  C:\mingw32\lib\crt0.o(.text+0x24):crt0.c: undefined reference to `__imp__iob'
  C:\mingw32\lib\crt0.o(.text+0x45):crt0.c: undefined reference to `_fpreset'
  C:\mingw32\lib\crt0.o(.text+0x6d):crt0.c: undefined reference to `_cexit'
  GCC.EXE: Internal compiler error: program ld got fatal signal 1
Purtroppo sono ancora un po' impedito con i compilatori a Riga di Comando e non
ho capito esattamente a cosa sono dovuti questi errori (?:-/
(premetto che ho Copiato - e non spostato come fa il file batch move-win32.bat i
vari files header e lib, nonchè aggiunto i vari SET come da README.TXT)
Comunque ti ringrazio nuovamente per avermi risposto !!
Ciao, UDA.


Davide Quack wrote:

 Tra i vari compilatori Freeware che ho provato c'è pure questo; l'ho trovato
di ottima fattura, soprattutto l'editor delle risorse (pensavo di abbinarlo,
se possibile, allo GNU-Win32, dato che in quest'ultimo manca ...), però
vorrei programmare in C++ e purtroppo, come tu stesso affermi, può elaborare
solo codice C .... peccato.
Grazie per il suggerimento e Ciao, UDA.

Newsgroup: it.comp.lang.c++
Titolo: Bluetooth

Ciao a tutti,
ho comprato un dispositivo bluetooth
della surecomm (classe 1).
Ho scaricato l'sdk per winxp sp2 e ci
sono le API bluetooth.
E' la prima volta che mi cimento a sviluppare
in quest'area.
Ho provato a usare BluetoothFindFirstDevice()
ma mi dà il msg "handle nullo".
Non saprei proprio dove iniziare...
Grazie x l'aiuto,
Davide 

Ciao,
Questo newsgroup si occupa del linguaggio C++ in quanto tale, e non di
aspetti specifici di particolari implementazioni. Per questo non e' il
posto piu' adatto per porre domande specifiche come la tua.
Potresti avere piu' fortuna su uno dei seguenti gruppi:
Per Win32 (95, 98, NT): it.comp.programmare.win32
Per Dos/Win 3.x: it.comp.os.dos
Per Linux:	it.comp.os.linux.development
Per C++Builder:	i gruppi borland.public.cppbuilder.*, disponibili sul
server 
newsgroups.borland.com
 (prevalentemente in
inglese, ma si puo' postare anche in italiano)
Grazie,
Nicola Musatti

Newsgroup: it.comp.lang.c++
Titolo: Problema sulla libreria JPEG 6a con lo stream I/O (FILE*)

Esiste un modo per convertire un buffer in memoria in
un puntatore FILE* (stream I/O)?
Il mio problema nasce dal fatto che per leggere un file JPEG con la libreria
ufficiale
JPEG versione 6a devo necessariamente
aprire uno stream I/O (FILE*) con la funzione fopen()
per poter informare la libreria di qual'è il file da leggere
(la funzione jpeg_stdio_src vuole un FILE* come parametro);
solo che il buffer della jpeg da leggere non c'e' l'ho
in un file, bensi' in un buffer in memoria.
Devo necessariamente salvare in un file temporaneo il mio buffer, aprire
un FILE* con la fopen sul file temporaneo e chiamare le funzioni della
libreria JPEG o c'e' un modo per evitare questo passaggio?
                    Grazie per la collaborazione.     Fabrizio Carimati

 un puntatore FILE* (stream I/O)?
[...]
Prova usare memory file mapping ( MapViewOfFile etc... )
Alexei

 in un file, bensi' in un buffer in memoria.
senza complicarsi troppo la vita, io salverei in un file temporaneo il
buffer, come dicevi tu, magari nella directory %TEMP%,
oppure, se di tale libreria jpeg ti danno il sorgente, potresti
semplicemente modificarne un paio di funzioni!
tanto credo che anche loro si leggano il file e se lo carichino in un buffer
TobiX

Newsgroup: it.comp.lang.c++
Titolo: getchar()

Perchč il dev c++ (bloodshed) mi da errore sul getchar()?

 Perchè il dev c++ (bloodshed) mi da errore sul getchar()?
Hai inserito questa linea in testa al tuo sorgente?
        #include <stdio.h>
Ciao!
-- 
P.S. qui si parla di C++... quindi ti consiglio di passare agli streams... 
---
*************** | Have you ever retired a human by mystake?
*** Azathot *** |
*************** | To contact me, ask me gently. Thanks.

 P.S. qui si parla di C++... quindi ti consiglio di passare agli streams...
Bhč lo farņ!
Ciao!
Newsgroup: it.comp.lang.c++
Titolo: [Linker Error] Unresolved external 'func(char)'

Aiutooooooo, sto impazzendo da quando mi è venuta la brillante idea di
imparare il c++ e abbandonare il mio amatissimo Visual Basic.
Sto cercando di eseguire alcuni esempi di un libro che ho comprato, ma con
esito negativo, inquanto riesco ha compilare tre righe di codice ogni sei
ore !! perchè dopo vari tentativi risolvo il problema e via... Ma questa
volta non è andata così:
Il mio compilatore Borland Builder 4.0 mi da questo errore, qualcuno mi sa
dire dove sbaglio ?
Grazie 1000 anzi 2000..
[Linker Error] Unresolved external 'func(char)' referenced from
C:\PROGRAMMI\BORLAND\CBUILDER4\PROJECTS\PROJECT2.OBJ.
#include <condefs.h>
#pragma hdrstop
#pragma argsused
int func ( char);
int func (char* a[10])
{
strcpy(*a,"nicola");
}
int main(int argc, char* argv[])
{
char *pippo;
func(*pippo);
/* quì poi avevo intenzione di assegnare a un printf il contenuto di pippo
per vedere se riuscivo a farmi restituire il valore dalla funzione, ma non
so' se per usare prinf devo includere qualche file!!  */
return 0;
}
Grazie e ciao a tutti.
Nicola.


Il motivo per cui di dava quell'errore qiundi è che la funzione func(char)
era diversa da func(char *a[10]), e quindi non esisteva implementazione di
func(char).

Newsgroup: it.comp.lang.c++
Titolo: Help Me!!

Sò di essere OT ma cerco qualcuno che mi Aiuti:
1) Dove posso trovare informazioni sull'utilizzo dei news group?
2) Come faccio a esegiure una procedura esterna creata da me? (sono un
principiante...)
Grazie anticipatamente.

Emanuele wrote:

cosa cerchi in particolare ??

 cosa cerchi in particolare ??
Sto solo cercando qualcuno che mi dica come fare (usando Borland C++)
ad aggiungere una mia procedura senza riscriverla nel sorgente del main...
senza cioč riscrivere prototipo e procedura stessa, qualcosa del tipo
#include <miaproc.h>
volevo sapere se si puň fare e se si, come....
Grazie.

Newsgroup: it.comp.lang.c++
Titolo: Fondamenti D'informatica II

C'è qualcuno di Ing. Dell'universita degli studi di Rc.?
Grazie!

Che razza di annuncio e'?


 ha scritto nel messaggio
news:9g86ru$m0n$1...@pegasus.tiscalinet.it...


Io sto preparando fond 2 a ingegneria, però a roma...
E non sai che si risponde 'sotto'???
Luc.

Si risponde sotto all'annuncio al quale si vuole rispondere...
"Luc" <TOGL...@katamail.com-TOGLI> ha scritto nel messaggio
news:v4fhit8vdi51tq3o4...@4ax.com...


[CUT]
Continui a quotare in maniera errata!
Luc.
Newsgroup: it.comp.lang.c++
Titolo: System() ??

Salve,
è la prima volta che scrivo in questo newsgroup, e poiché sono un neofita di
borland c++,
mi chiedevo se con il comando system() si poteva eseguire i programmi in
background,
senza cioè che si aprisse una finestra dos.
Esempio:
con il comando
system(pkunzip.exe *.zip)
mi si aprte una finestra indipendente dal mio programma con l'output del
pkunzip,
c'è un modo per non far vedere l'output del pkunzip??
Grazie

 c'è un modo per non far vedere l'output del pkunzip??
Usare la libreria di infozip (gratuitamente scaricabile, tra l'altro) e` la
soluzione migliore per questo specifico problema, ma per una soluzione
piu` generale devi usare metodi specifici, piu` o meno dipendenti dalla
piattaforma.  popen e _popen sono la prima cosa da provare (facili e
relativamente portabili), se non vanno bene quelli "si va sul peso" e ti
consiglio di provare it.comp.programmare.win32.
Alex

 wrote in message
8cg8tq$5go$2...@nslave2.tin.it...

Newsgroup: it.comp.lang.c++
Titolo: Non mi funge bene il cygwin ?

Ho provato ad usare anche questo compilatore per compilare il famoso
esercizio del libro di Lippmann, ma se uso gcc mi dà questo:
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x17):bookstore
.cc
 undefined reference to `cout'
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x1c):bookstore
.cc
 undefined reference to `ostream::operator<<(char const *)'
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x3f):bookstore
.cc
 undefined reference to `cout'
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x44):bookstore
.cc
 undefined reference to `ostream::operator<<(char const *)'
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x6b):bookstore
.cc
 undefined reference to `cout'
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x70):bookstore
.cc
 undefined reference to `ostream::operator<<(char const *)'
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x93):bookstore
.cc
 undefined reference to `cout'
/cygdrive/c/DOCUME~1/ADMINI~1/IMPOST~1/Temp/cclo34ZK.o(.text+0x98):bookstore
.cc
 undefined reference to `ostream::operator<<(char const *)'
collect2: ld returned 1 exit status
....invece se uso il g++ funziona e mi crea l'eseguibile che però se vado a
lanciarlo da windows mi dice che non trova la libreria a collegamento
dinamico cgwin1.dll che invece è nella sottodirectory bin.
Ma come faccio a creare un eseguibile a se stante ? ...cioè che non cerchi
ulteriori dipendenze in giro ?
Grazie della pazienza
Alessandro

 esercizio del libro di Lippmann, ma se uso gcc mi dà questo:
[cut]
Visto che lo possiedi ed oramai ci siamo, perche' non provi anche con VC++6
?!?
Alex

ok...lo provo; non lo utilizzavo perchè si dice che il Borland sia migliore
!!
Ciao
Alessandro

 ok...lo provo; non lo utilizzavo perchè si dice che il Borland sia
migliore
C'e' chi dice il contrario. Io personalmente preferisco Ms VC++ !!!
(inoltre le aziende in genere chiedono piu' MS che B)
Alex

C'e' chi dice il contrario. Io personalmente preferisco Ms VC++ !!!
WOW !!! allora lo useremo tutti !!!

 WOW !!! allora lo useremo tutti !!!
ROTFL
--
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

WOW !!! allora lo useremo tutti !!!
Era una battuta ? Non l'ho capita :(
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff


lol
Alex

 Era una battuta ? Non l'ho capita :(
sigh, neanch'io! :((

perchč se compilo, dopo aver creato l'eseguibile non gira ?....dice che non
trova una dll di cygwin nel percorso (!!??)
Ciao
Alessandro

 trova una dll di cygwin nel percorso (!!??)
Ti sei risposto da solo. Cerca la lib e mettila nel path !
Tutti i prg compilati da cygwin sono linkati a cygwin.dll (emulazione
unix/posix). Se non la vuoi installati mingw32.
--
Bye,
  Mirko
Newsgroup: it.comp.lang.c++
Titolo: problema logica un pò complessa

salve allora ho questo problema il tutto non è in c++ ma scritto in oggi 
(php)
quindi prego chi mi vogli aiutare di non legare troppo la risposta ad un 
linguaggio
il mio obiettivo è fare un grid una dbgrid
ho un strattura del genere
class fiedl
class collectionfield (collezzione di di classi pat. composite non entro nei 
dettagli)
class man_grid (manovra la griglia)
ogni field ha un campo che identifica il campo del database (alla griglia va 
collegato un recordset)
il problema è che nella mia griglia devo poter visualizzare i valore 
completo di un campo
è questo non è un problema il problema si verifica quando
il valore di una cella della griglia deve essere
testo campo testo campo ecc.
come potrei fare ?

 come potrei fare ?
Inizia a inviare il tuo messaggio ad un gruppo che si occupa di php,
invece che scocciare il prossimo.
Ciao,
Nicola


[ot]
Che acido!! non mi sembrava il caso di rispondere in quel modo ho postato la
domanda qui
perchč la soluzione del problema (la mia domanda) non č legata ad uno
specifico linguaggio
essendo questo gruppo di c++ penso che le problematiche relative
all'utilizzo di classi
o loro relazioni con le medisime ,siano conosciute di piů i relazione ad un
linguaggio(php) che  non č nato
ad "oggetti" e che quindi la maggior parte degli sviluppattori ancora lo
usano con un approccio procedurale.
[/ot]
cma ciao.

 [/ot]
Che acido!! non mi sembrava il caso di rispondere in quel modo; ho postato la
domanda qui perchè la soluzione del problema (la mia domanda) non è legata ad 
uno specifico linguaggio.
Essendo questo gruppo di c++, penso che le problematiche relative
all'utilizzo di classi (omissis) siano conosciute di più [qui, rispetto ai 
gruppi che trattano di] un linguaggio (php), che  non è nato ad "oggetti" e che 
quindi [viene usato dal]la maggior parte degli sviluppattori ancora (omissis) 
con un approccio procedurale.
Detto questo, non voglio mettermi ad insegnarti l'italiano, volevo solo farti 
capire che sforzandoci a scrivere in un italiano piu' corretto possibile, 
semplifichiamo il lavoro a chi, magari, vorrebbe aiutarci ma non riesce a 
capire cosa si vuole nello specifico.
--
Paolo
PS: il post che ho modificato era, peraltro, decisamente comprensibile anche 
senza le mie modifiche; l'ho usato solo come esempio per farti vedere come, 
qualche virgola qua' e qualche punto la', aiutino la lettura imponendo delle pause.

Va bene hai ragione... per quanto riguarda il mio post!,  ho scritto
velocemente e non ho riletto.
:)
Facciamo la pace a finiamola qui :-) tutto è bene quel che finisce bene...
Ciao
"Paolo Bernini" <"[mynickname]"@[myprovider].[mycountry]> ha scritto nel
messaggio news:jzYpd.53140$Ni.18...@twister1.libero.it...


 Ciao
Hey! Nessuno era in guerra :-)
La mia intenzione era solo quella di farti capire dove avevi sbagliato per 
permetterti di non ripetere l'errore, non certo sgridarti.
peace and love ;-)
-- 
Paolo
Newsgroup: it.comp.lang.c++
Titolo: R: Cercasi Guida Gratis di C++ in Italiano?

 --------------------------------------------------

Come si fa renderlo utilizzabile per applicazioni dos?
Devi scegliere come tipologia di progetto le applicazioni console.
Ciao,


 Devi scegliere come tipologia di progetto le applicazioni console.
Io uso BCBuild3 con applicazioni console e funziona anche con
using namespace std;
Inoltre senza installare nient'altro, salvando da block notes nomefile.cpp,
se vai in dos nella directory dove l'hai salvato e digiti:
bcc32 nomefile.cpp
hai già installato Borland C++5.2, quindi digiti:
nomefile
e mandi in esecuzione il tuo programma!
p.s. per utilizzare le applicazioni console devi fare file, new..., console
wizard, (console exe) finish, e sei pronto, ma attento, per provare gli
esempi, purtroppo devi fare un noioso copia incolla, per ogni esempio, non
ho ancora capito come mai non compila direttamente i sorgenti importati! La
cosa è un po' scomoda!
puoi cancellare tutto quello che appare sulla finestra console all'inizio...
Ciao

hai già installato Borland C++5.2, quindi digiti:
Lo stesso vale anche per questo compilatore.


 Lo stesso vale anche per questo compilatore.
Non sai se bcbuilder4 supporta correttamente lo standard?
O eventualmente Borland C++5.5?
Grazie anticipatamente per la risposta!
Ciao!

 O eventualmente Borland C++5.5?
Mi unisco alla richiesta: volevo scaricarmi il BC++5.5 ma vorrei prima
sapere come sta a conformità allo standard. Nessuno lo usa?
EMG

O eventualmente Borland C++5.5?
Non l'ho testato a fondo (ma conto di provarlo presto),
pero` sembra decisamente piu` standard del 5.02
(che ripeto, dovrebbe essere lo stesso compilatore
di BCB 3.0, al piu` con poche modifiche).
Sono finalmente supportati i member template e se non
ricordo male std e` supportato molto meglio.
Anche gli header mi pare siano stati adattati allo standard...
Mi pare di ricordare che non supporta ancora la deduzione
implicita dei parametri (a proposito... non ho ancora provato
se VC++ la supporti o meno...).
Non posso dire molto sulla libreria standard, non l'ho
provata.


 di BCB 3.0, al piu` con poche modifiche).
No, dovrebbe essere quello della corrisponente release del Borland C++
Compiler (uscito di produzione). Il compilatore di BCB 3.0 dovrebbe
essere il 5.3
Ciao,
Nicola

Il bcbuild4 usa il bc++5.4, almeno la versione che ho installato io, mentre
per il bcbuild3 io avevo il 5.22.
Se qualcuno volesse testare il bcbuild4 lo può trovare in edicola su
computer magazine di giugno.
Io purtroppo non sono in grado di farlo!!  8^(
Ciao ciao!
(p.s. non voglio pubblicizzare nulla, probabilmente anche su altre riviste
si potrà trovare, ma per ora io l'ho visto solo su questa!)
Newsgroup: it.comp.lang.c++
Titolo: Manuale MFC

Ho iniziato da poco ad usare Visual C++.
Conosco abbastanza bene il C++, e vorrei imparare ad utilizzare le MFC.
qualcuno sa indicarmi un tutorial e/o manuale in linea sull'argomento (anche
in inglese), oppure un bon libro?
Grazie.
Massimo Barbieri
e-mail: 
mbar...@cs.unibo.it
Home page: 
www.cs.unibo.it/~mbarbier
   ICQ: 7436406
___________________________________________________
If there's one thing I've learned over the years, it's never underestimate a
Klingon. (Picard)

Conosco abbastanza bene il C++, e vorrei imparare ad utilizzare le MFC.
Programmare Windows 95 con MFC di Jeff Prosise edito da Microsoft
Press. 2 volumi a 120.000 lire.

Newsgroup: it.comp.lang.c++
Titolo: How to create a Non-Rectangular Window with Visual C++



Please Help.........

I want to write a program in which the window is not a rectangle window.

For example, to write a program to display the time, just like a clock

But the panel is a circle.

How can I do it, please help........

My e-mail: 
kin...@plink.cityu.edu.hk


 


...


 wrote in message
36d4...@news.megasys.it...


 qualsiasi forma... almeno cosě ricordo...
Si, ma non facilmente se usi MFC :-)
Comunque la window č sempre rettangolare (o almeno cosě credo), quello che
ci scrivi dentro puň anche non esserlo.
--
Alessandro Monti

You can find the answer here:
http://codeguru.developer.com/mfc/comments/3779.shtml
So as for a lot of question about MFC
I copy here the short answer for your problem:
To create an elliptical window first you must create a member
variable with CRgn or must create a pointer to CRgn and then
you must add code given below into InitDialog function for a
dialog application or OnCreate function of mainframe for a
SDI/MDI application
 CRect rcClient;
GetClientRect(rcClient);
m_rgn.CreateEllipticRgn(0, 0, rcClient.Width(), rcClient.Height());
 SetWindowRgn(m_rgn, TRUE);
Al sito 
http://codeguru.developer.com
  si trovano molte risposte ai quesiti
MFC (e C++) in particolare anche al problema della finestra ellittica
(circolare è ovviamente un caso particolare). Sopra ho copiato la risposta
che ho trovato sul sito.
Ciao
Alessandro


Newsgroup: it.comp.lang.c++
Titolo: esercizi ed altro...

Sto imparando da autodidatta il linguaggio c++ e vorrei sapere dove posso
trovare un sito ove vi sono esercizi per appunto esercitarmi su quello che
sto leggendo.
ad esempio esercizi su if, if -else, while, do-while e for ecc.
Chi mi puo aiutare?
Non c'č nessuno che mi puo seguire anche on-line a cui chiedere spiegazioni,
insomma che sia disponibile anche per chiarimenti
o per future lezioni private a pagamento (io sono di MI)
Grazie a tuti colo ro che mi aiuteranno
Enri65
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 cui chiedere spiegazioni, insomma che sia disponibile
a questo scopo c'e' proprio questo newsgroup.
Tommy