mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: Martelli´s tutorial

Ti faccio i complimenti per l ´ottimo tutorial sulla programmazione con API
di win32 che ho scaricato e che studiero´ con calma.
Vorrei far notare tuttavia che manca il capitolo 46: elenco di bitmap oppure
e´ sbagliato il link.
Infine delle domande:
- dopo che ho studiato e capito tutto il tutorial, a che livello sono da 1 a
10 nella programmazione di win 32?
- quale sara´ il passo successivo? Voglio dire, cominciare studiando da zero
partendo da tutorials e´ facile...il difficile e´ continuare quando si e´ a
livello intermedio, in win 32 come in c++ come in altri campi.
- secondo te e´ utile studiarsi le mfc in libri tipo quello scritto da jeff
procise, oppure si puo´ benissimo sopravvivere con la sola conoscenza delle
API?
- visto che sai spiegare concetti complicati anche a neofiti, perche´ non
fai un bel tutorial di come strutturare un progetto in c++ spiegando il
perche´ di certe scelte di progettazione con applicazioni pratiche?
- mi manderai a quel paese?

 10 nella programmazione di win 32?
Forse 1 ma delle solide basi valgono molto.
EMG

 - mi manderai a quel paese?
Nah, il biglietto e` troppo caro...!-)
Alex

Newsgroup: it.comp.lang.c++
Titolo: Codice facile

Salve gente!
Volevo chiedevi se sapete indicarmi un sito dove trovare qualche
semplicissimo programma scritto in C++.
Qualcosa che faccia uso delle classi e che sia abbastanza facile da capire
guardando il codice e conoscendo un po' di programmazione in generale...
Qualcosa da cui partire per imparare poi un po' meglio il linguaggio "sul
campo".
Grazie a chi mi risponde.
Michelangelo

 semplicissimo programma scritto in C++.
http://www.programmazione.it
-- 
Luc.

Newsgroup: it.comp.lang.c++
Titolo: Griglia in borland builder c++

Ho un form dove ho inserito un componente image e avrei la necessità di
sovrapporre ad essa una griglia ma non riesco a farlo .
                                                        Grazie a chi mi
aiuterà


Allora sei proprio duro!!!!!
Non hai capito che qui non si parla di Borland ma di C++ e basta ?
Ti era gia stato detto mi pare.
-- 
Posted from [194.214.173.28] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

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

Grazie per la gentilezza  che mi ai rivoloto
lo stesso non vale per gli altri che invece di dare consigli e aiuto
non sanno fare altro che criticare
                                                Ciao


Ma allora lo fai apposta.
Hai chiesto tempo fa: "compilazione con builder 4 pro"
e ti fu detto che questo non era il NG adatto. 
E ora dici che gli altri criticano!!! 

Newsgroup: it.comp.lang.c++
Titolo: interruzione

Salve!
Mi serve un altro piccolo aiuto ho bisono di un istruzione che faccia un
ciclo infinite volte finche non viene premuto un tasto?
es:
while (finche non premo ESC)
            printf ("HELLO");
grazie

 ha scritto nel messaggio
news:NS2s8.138185$1S3.4...@twister1.libero.it...

while (!kbhit());
tutto qua
ovvero... cicla nel while finke non (!) viene premuto un tasto (hit) da
tastiera (kb=keyboard)
ciao
--
----------------------------------------
Carlo Camarda
chiamac...@tiscalinet.it
]@#[ Anna I Love You ]#@[

 a écrit dans le message news:
RAhs8.59906$pT1.1...@news1.tin.it...

Qualcuno puo' postare la soluzione portatile che non la ricordo?
Questa soluzione ovviamente su sistemi linux e mac verra' sputata dal
compilatore.
Maurus

while (!kbhit());
Non è standard. In realtà in C++ standard non si può fare.
-- 
Marco Barisione (ICQ 84277092)

 Qualcuno puo' postare la soluzione portatile che non la ricordo?
La tastiera è un dispositivo di input. La stragrande maggioranza delle 
funzioni che devono interagire con periferiche di I/O non è portabile, 
quindi bisogna armarsi di #ifdef...#endif.
-- 
Luc.

 Luc.
Allora mi confondevo con la soluzione portatile standard "mostruosa" postata
da qualcuno per evitare la fatidica getch() che evita di far chiudere la
finestra console.
Postarono una robona di 10-15 righe.
Maurus

Newsgroup: it.comp.lang.c++
Titolo: Chiamata a funzione

Rieccomi.
Considerando una classe (base) astratta A e una classe da essa derivata
virtualmente B. Posso in qualche modo eseguire tramite un oggetto di tipo B,
una funzione membro della classe A senza utilizzo di puntatori o cose
simili?
Grazie


Uhm... non e' chiarissimo quel che chiedi, ne' il motivo. Cmq, se casti 
l'istanza dell'oggetto B al tipo A, poi chiamerai metodi di A, 
indubbiamente... anche se, tecnicamente parlando, non stai piu' 
lavorando con la stessa istanza. Altrimenti, ti tocca castare i 
puntatori, credo. Ma non vedo dove stia il problema nel farlo.
-- 
Mat/tia Belletti - Undergraduate student @ 
cs.unibo.it
ICQ: 33292311    - email: 
mbel...@cs.unibo.it
IRC: RedGlow     - site(s): 
http://www.cs.unibo.it/~mbellett
Linux registered user 299762 @ Linux registered machine 213003

...

Dal punto di vista sintattico, se intendi chiamare un membro della
classe base sullo stesso oggetto, si:
class A {
  public:
    int f() { return 2; }
};
class B : public A { // La derivazione virtuale e' irrilevante
  public:
    int g() { return f(); }
};
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: namespaces

Sono curioso di vedere se gli eventuali messaggi d'errore generati dai 
vari compilatori sono corretti. Quello del VC8 non lo è. Gli altri?
namespace N { class C {}; }
int operator+(int i, N::C) { return i+1; }
#include <numeric>
int main()
{
   N::C a[10];
   std::accumulate(a, a+10, 0);
}
Kiuhnm

 }
BCC55: nessun errore (!)
GCC 4.01:
c:/djgpp/bin/../lib/gcc/djgpp/4.01/../../../../include/cxx/4.01/bits/stl_numeric.h: 
In function '_Tp std::accumulate(_InputIterator, _Input
Iterator, _Tp) [with _InputIterator = N::C*, _Tp = int]':
NAMESPACES.cc:8:   instantiated from here
c:/djgpp/bin/../lib/gcc/djgpp/4.01/../../../../include/cxx/4.01/bits/stl_numeric.h:89: 
error: no match for 'operator+' in '__init + * __fir
st'
VC++ Toolkit 2003:
C:\Programmi\Microsoft Visual C++ Toolkit 2003\include\numeric(17) : error 
C2784: 'std::reverse_iterator<_RanIt> std::operator +(_Diff,cons
t std::reverse_iterator<_RanIt> &)' : could not deduce template argument for 
'const std::reverse_iterator<_RanIt> &' from 'N::C'
        C:\Programmi\Microsoft Visual C++ Toolkit 2003\include\xutility(626) : 
see declaration of 'std::operator`+''
        NAMESPACES.CC(8) : see reference to function template instantiation 
'_Ty std::accumulate<N::C*,int>(_InIt,_InIt,_Ty)' being compile
d
        with
        [
            _Ty=int,
            _InIt=N::C *
        ]
C:\Programmi\Microsoft Visual C++ Toolkit 2003\include\numeric(17) : error 
C2677: binary '+' : no global operator found which takes type 'N
::C' (or there is no acceptable conversion)
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg
The EMG Music page:         
http://www.emagsoftware.it/emgmusic
 

 ::C' (or there is no acceptable conversion)
Errato (come quello del VC8) infatti l'aggettivo "global" è 
completamente sbagliato e fuorviante, dato che il nostro operatore /è/ 
globale.
Kiuhnm

Newsgroup: it.comp.lang.c++
Titolo: Open Gl

Ciao a tutti, vorrei cominciare a imparare le funzioni grafiche del c++ che
magari sfruttano open gl, qualcuno mi sa dire dove posso trovare qualche
documentazione on line sull'argomento???
Thanks
Vincenzo



a parte che le OGL sono in C e non in C++...
Comunque:
news://it.comp.giochi.sviluppo - il NG sullo sviluppo di videogames
http://gpi.infomedia.it
 - il sito di riferimento dello sviluppo di
giochi in italia
http://nehe.gamedev.net
 - un ottimo tutorial introduttivo sulle opengl
http://www.opengl.org
 - il sito ufficiale delle OpenGL
-- 
Lawrence "Rhymes" Oluyede (
rhy...@myself.com
)
"Per cambiare, per diventare un'altra
cosa dobbiamo prima sapere cosa siamo"
(Bruce Lee)
Newsgroup: it.comp.lang.c++
Titolo: Problemi con il comando RegDBCreateKeyEx di InstallShiled

Il seguente script non produce neanche mezza riga nel registry, qualcuno
riesce a capire perche':
#define EXTENSION ".ajp"
#define FILETYPEID "ajpfile"
#define CLASS  "class"
function RegExstension()
   STRING szProgName;
   STRING szIcon;
begin
   // Create file-extension registry key, .ajp.
   RegDBCreateKeyEx( EXTENSION, CLASS );
   // Assign the value "zzzFile" to the .ajp key.
   RegDBSetKeyValueEx( EXTENSION, "", REGDB_STRING, FILETYPEID, -1 );
   // Create the application (class) identification key
   RegDBCreateKeyEx( FILETYPEID, CLASS );
   // Assign the value "ajpFile" to the Project key.
   RegDBSetKeyValueEx( FILETYPEID, "", REGDB_STRING, "Project", -1 );
   RegDBCreateKeyEx ( FILETYPEID + "\\shell", CLASS);
   RegDBCreateKeyEx ( FILETYPEID + "\\shell\\open", CLASS);
   RegDBCreateKeyEx ( FILETYPEID + "\\shell\\open\\command", CLASS);
   RegDBCreateKeyEx ( FILETYPEID + "\\DefaultIcon", CLASS);
   //imposta il comando open
   szProgName = TARGETDIR ^ "notepad.exe \"%1\"";
   RegDBSetKeyValueEx( FILETYPEID + "\\shell\\open\\command", "",
REGDB_STRING, szProgName, -1 );
   //associa l'icona
   szIcon = TARGETDIR ^ "notepad.exe,0";
   RegDBSetKeyValueEx( FILETYPEID + "\\DefaultIcon", "", REGDB_STRING,
szIcon, -1 );
   return TRUE;
end;


wrote:
Supponendo (visto che non lo precisi) che stai utilizzando
InstallShield 5.0 (5.1 o 5.2) con o senza service pack i motivi
potrebbero essere:
1) Non richiami la funzione RegExtension nel corpo principale del
Program.
2) Prima di questa funzione viene fatta una chiamata a
RegDBSetDefaultRoot per cui non sei nella HKEY_CLASSES_ROOT.
3) Stai provando lo script su un PC dove non hai l'accesso alla
creazione al registry (... ma non credo...)...
Se, verificate queste due condizioni, continua a non funzionarti
dovresti indicare più dettagli perchè qualcuno possa aiutarti!!!

Newsgroup: it.comp.lang.c++
Titolo: fstream e filesize

Salve,
Volendo aprire un file tramite fstrem, mi è sorta la necessità di conoscere
la dimensione del file stesso.
Purtroppo non sono riuscito a trovare nessun metodo della classe fstream che
mi restituisse la lunghezza del file aperto.
Ho cercato su Internet ed ho trovato questo truppo per calcolare la
lunghezza:
 fstream f;
 int filesize;
 f.open("prova.txt", ios::binary | ios::in | ios::out);
 f.seekg(0,ios::end);
 filesize=f.tellg();
Per caso qualcuno conosce una soluzione più elegante? Oppure qualcuno sa se
esiste un metodo della classe fstream per conoscere direttamente la
dimensione del file aperto?
Grazie e ciao.

 dimensione del file aperto?
In modo portabile no. In alternativa puoi usare l'interfaccia
programmatica del tuo sistema operativo, che quasi certamente prevede
cio' che ti interessa. Per maggiori dettagli chiedi su un newsgroup
specifico.
Ciao,
Nicola

dimensione del file aperto?
No, non esiste. Forse le funzioni non standard di un sistema operativo
lo possono prevedere ma non quelle standard.
Il Ghenio
---------
// TODO: Place your ass here
Newsgroup: it.comp.lang.c++
Titolo: Passaggio da Visual Basic 6 a C++

Salve a tutti sono nuovo del NG
Sto sviluppando da circa un anno in Vb6 riscontrando molti problemi con ADO,
Griglie, ocx.etc...., ma facilissimo nell'utilizzo e nel creare finestre ed
oggetti per la programmazione in Windows. Premetto che non ho mai visto sia
il Visual C++ che il Borland C ma ha scuola ho studiato il "c" e volendo
passare ad un linguaggio + serio e + affidabile volevo alcune risposte che
mi tormentano.
Secondo voi passare in C è dura?
Cosa mi consigliate per sviluppare progetti veloci ma affidabili in ambiente
Windows?
Che tipo di motore usare x i DB? Attualmente uso Access.
Grazie anticipatamente a tutti e scusate del disturbo
Buon lavoro
bye Roberto

 vertiginosamente.
Non ti ho capito.
in C++Builder si possono usare ocx tipo vsFlexGrid, cmddlg.ocx e altre
ancora?
I miei progetti sono basati sulla griglia di VideoSoft(visualizzazione di
tabelle) e sulla gestione di dati tabellari correlati tramite join, stampe
tipo DataReport e altro ancora che oramai ho preso "la mano" in Vb.
Posso passare a c?
Grazie
bye Roberto

 Delphi usa BDE (come anche Borland c++ builder).
ma è aperto verso ODBC, Access stesso e un po' tutti gli altri DBMS.
Salutoni,
Marcello.
Newsgroup: it.comp.lang.c++
Titolo: Testo di riferimento C++

Salve a tutti. Ho bisogno di acquistare un testo di riferimento per il
C++ che sia qualcosa di equivalente al K&R per il C. Avevo pensato al
Soustroup (si scrive cosě? non l'ho mai imparato!). E' una scelta giusta
(non per cominciare, ma come testo di riferimento) secondo voi? Chi mi
puň dare il nome preciso dell'autore e magari l'ISBN?
A proposito, lo standard ufficiale dove si puň acquistare? Esistono
traduzioni in italiano?
Grazie a tutti.

Esistono traduzioni in italiano?
AFAIK, no.
-- 
Andrea Laforgia
#exclude <windows.h>

Grazie. Puoi darmi anche i dati del Soustroup, o come cavolo si scrive?
Grazie

 scrive? Grazie
http://www.gorilla.it/gorilla/product.asp?sku=8871920783&dept%5Fid
--
Gerolamo
E' in corso la votazione di it.comp.software.webserver
Se sei interessato alla creazione di questo NG, leggi il messaggio:
news:MK.it.comp.softw...@news.nic.it

Folgorato da brillante idea, yes ha scritto il 09 Feb 2003  
(
news:pan.2003.02.09.19...@dominio.com
):

Lo standard č lo Stroustroup, poi c'č lo Stroustroup "Annotated Reference 
Manual". Per cominiciare c'č un ottimo libro che comprai tempo fa,
Derek M. Capper "Introduzione a C++ per le scienze e l'ingegneria",
McGraw-Hill. Molto chiaro e _soprattutto_ mette bene in evidenza le
trappole del linguaggio
-- 
"Non mi piace il football, sta troppo ovunque: secondo me, l'eccesso di
calcio va a discapito del fosforo." (Marc 'O Chivec)
http://www.geocities.com/fabienstein

 Manual".
Questo libro e' decisamente superato. Ha ormai solo valore dal punto
di vista storico.
Ciao,
Nicola

 di vista storico.
e allora quale sarebbe, a tuo avviso, quello da acquistare?!?

 wrote

Marta, penso che Nicola si riferisse a:
"The Annotated C++ Reference Manual" pubblicato nel 1990!
Non a:
"The C++ Programming Language (Special 3rd Edition)" la cui special edition
e' stata pubblicata nel 2000.
Tommy

...

...e di cui una copia (aziendale, per fortuna!) si trova nell'armadio
dietro la mia scrivania. Credo di aver risposto :-)
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: Problema Visual C++ & MFC

Salve a tutti
Non riesco ad usare la classe CArray nel mio progetto
uso questa dichiarazione
     CArray<int,int&> pippo;
ed ogni volta che provo a compilare ho una serie di errori in cascata
tutti sulla stessa linea ovvero quella della dichiarazione della
variabile pippo
     error C2143: syntax error : missing ';' before '<'
     error C2501: 'CArray' : missing storage-class or type specifier
     error C2059: syntax error : '<'
     error C2238: unexpected token(s) preceding ';'
c'e' qualcuno che sa perche'?
Grazie

     CArray<int,int&> pippo;
...
Non conosco CArray (non e' standard) ma dubito che si possa
gestire un container di reference. I reference non possono
essere ri-associati una volta inizializzati e questo per la
maggior parte dei container sarebbe inaccettabile (tutti quelli
che hanno potenzialmente necessita' di spostare gli elementi
in memoria). Detto in altre parole se scrivi
   int& j=i;
poi non c'e' piu' modo di associare j ad un altro intero; questo
comporta alcune complicazioni se si vogliono gestire classi
con dei membri che sono reference oppure container di reference.
Per ottenere qualcosa di ri-assegnabile devi usare puntatori.
HTH
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff

 gestire un container di reference.
Non ho mai capito perchč, ma i container dell'MFC chiedono come secondo
parametro del template come accedere agli oggetti memorizzati. Questo č
quanto dice l'help:
"template< class TYPE, class ARG_TYPE > class CArray : public CObject
Parameters
TYPE
Template parameter specifying the type of objects stored in the array.
TYPE is a parameter that is returned by CArray.
ARG_TYPE
Template parameter specifying the argument type used to access objects
stored in the array. Often a reference to TYPE. ARG_TYPE is a parameter
that is passed to CArray."
Per quanto riguarda il problema citato da Davide suppongo che non abbia
inserito #include <afxtempl.h>, e comunque il consiglio č quello di
utilizzare un std::vector.


Signor fbf sei un MITO
quel cavolo di include mi ha fatto letteralmente impazzire
non riuscivo a compilare neanche il piu' stupido esempio dell'MSDN
Per quanto riguarda std::vector non lo conosco ma magari
+ avanti provero' ad utilizzarlo
Grazie

quanto dice l'help:
Possiedo e uso per lavoro VC++6 ma non ho mai dedicato tempo a
studiare MFC (un po' per principio e un po' perche' sono della
vecchia scuola di programmazione API WIN32 "nude").
Il problema sui container di reference e' pero' presente.

Newsgroup: it.comp.lang.c++
Titolo: Domanda su accesso a memoria.

Salve ho un'altra domanda.
Mettiamo che io in C++ voglia accedere ad un'area di memoria precisa, di cui
io conosco l'indirizzo, lo posso fare con i meccanismi che mette a
disposizione il C++, oppure questa e una cosa scorretta?
Cioe se io ho un puntatore:
int *p
p=new int;
in questo caso a p viene assegnato un indirizzo di memoria libera, pero io
gli vorrei assegnare un indirizzo di memoria specifico.
ad esempio mettiamo che io voglia accedere all'indirizzo di memoria reale
B8000 Hesadecimale
Lo posso fare tramite i meccanismi del C++?
dovrei scrivere in questo modo ?
p=&indirizzo?
Grazie anticipatamente per le risposte.

No sono sicuro, ma cmq credo si acceda assegnando l'indirizzo in esadecimale
al puntatore.
ciao
--
Luigi
Web Site: 
http://web.tiscali.it/luigi_web
E-mail: 
cybe...@email.it
ICQ #46240443

 p=&indirizzo?
No, penso una cosa del genere:
int *p = (int*) 0xB8000;
ma non ho idea di quali casini possa fare.
E cmq io ho messo int *p, ma bisogna vedere a che tipo di dato fai
riferimento puntando a quell'indirizzo (ovvero se a te servono int, float,
patate, cavoli...)
Dome

 disposizione il C++, oppure questa e una cosa scorretta?
Puoi usare la forma "placement new", che ti permette di specificare
l'indirizzo di memoria che corrispondera' alla nuova istanza di una
classe.  Consulta un testo di C++.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Dept. of Physics, Univ. of Padova, Italy          loreti at pd dot infn dot it

 int *p = (int*) 0xB8000;
*p indica il valore, quindi come lo hai scritto è sbagliato, comunque il tuo
consiglio mi è stato utile perch infatti ho provato a fare una cosa del
genere:
char *p;
p=(char*) 0xB8000;
poi ho visualizzato il contenuto di p puntatore e si trova, era quello che
mi serviva.
Adesso posso sperimentare quello che dovevo verificare.
Ciao.

 *p indica il valore, quindi come lo hai scritto e` sbagliato, 
int *p  indica che p  e` un  puntatore a int,  quello che ha  scritto e`
giusto.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
"Sei l'unica donna della mia vita".
(Adamo)

disposizione il C++, oppure questa e una cosa scorretta?
Il linguaggio non te lo impedisce, infatti puoi tranquillamente fare
int *p=reinterpret_cast<int*>(0xF00F);
p adesso punta all'indirizzo specificato,quello che invece non é certo
é il risultato che otterrai, un bellissimo 'undefined behaviour' su
Windows se tento di dereferenziare il puntatore o assegnare un valore
a quell'indirizzo ma questo dipende dal sistema operativo che stai
utilizzando.
In c++ puoi anche scegliere la locazione di memoria dove allocare un
oggetto.
void *bf=reinterpret_cast<void*>(0xF00F);
obj *pobj= new(bf)obj;
Anche qui il risultato ottenuto non é certo.
Il Ghenio
---------
// TODO: Place your ass here

 disposizione il C++, oppure questa e una cosa scorretta?
Non puoi assegnare un valore numerico ad un puntatore se non 0 anche perchè
che ne sai tu se quell'area di memoria è già occupata? immagini che casino
farebbe un programma che lavora così?
Dan
Newsgroup: it.comp.lang.c++
Titolo: Impossibile trovare il punto di ingresso

Salve a tutti, sto lavorando a un piccolo progetto in cui uso le
librerie open inventor (ver. 5.0). Dopo qualche mese di lavoro mi sono
deciso ad utilizzare insieme alle open inventor anche le open cascade
(ver 6.1). Dopo aver introdotto un paio di metodi che utilizzano le
open cascade, compilo con VC++ 2003, ma al momento dell'esecuzione
ottengo questo errore:
"Impossibile trovare il punto di ingresso ??0exception@@QAE@ABV0@@Z
della procedura nella libreria di collegamento dinamico INV505D.DLL"
Se compilo lo stesso progetto in VC++6 riesco ad eseguire
l'applicazione.
Qualcuno sa dirmi quale potrebbe essere la causa di questo errore?
Grazie.

 
Probabilmente stai usando per compilare il progetto un .h e un .lib non 
corrispondenti alla DLL che troverai a runtime. Il nome o i parametri o 
la call convention non corrispondono a quelli esportati dalla DLL.
Ti consiglio di spostarti su un newsgroup specifico per visual c++ o uno 
piu' generico di programmazione.
-- 
Roal Zanazzi
Newsgroup: it.comp.lang.c++
Titolo: std::list?

Salve, attualmente ho una lista di puntatori ad oggetti che in un
determinato punto del mio codice scorro, richiamando un metodo per ogni
oggetto. Il problema nasce dal fatto che il metodo richiamato può
rimuovere (direttamente o indirettamente attraverso altri oggetti e
metodi) l'oggetto stesso dalla lista o rimuovere un'altro oggetto
presente nella stessa lista. Quindi mi trovo degli errori in lettura di
memoria quando vado ad accedere ad iteratori che ormai non sono più
validi. Per rimuovere gli elementi uso la remove(), dato che utilizzare
la erase sarebbe troppo macchinoso (come ho detto prima, potrei
rimuovere l'oggetto dalla lista attraverso un metodo richiamato dopo
averne chiamati altri, e non mi sembra il caso di passarmi
l'iteratore). Ho scelto in origine di utilizzare una lista in quanto
faccio spesso operazioni di inserimento/rimozione. Le varie soluzioni
che ho ipotizzato non mi soddisfano pienamente (ad esempio utilizzare
un vector, o trasferire a "blocchi" il contenuto della lista in un
vector). Idee o strutture dati alternative?
Grazie


Secondo me il problema sta nel disegno di base. L'idea che una funzione
membro di una classe manipoli un contenitore di istanze della classe e'
un errore di incapsulamento certo e di logica probabile. Sposta la
logica di manipolazione della lista in una classe contenitore che abbia
la lista come membro dato. Inoltre se rimuovi gli elementi mentre
scorri la lista *devi* usare erase.
Ciao,
Nicola

 Nicola
Se non ho capito male io quello che hai scritto, hai capito male la
struttura. E' qualcosa di simile (semplificando):
class A {
  std::list<B*> lista;
  ...
  Action() {
   for(...) {
     B->metodo();
   }
  };
quindi credo sia già come suggerisci tu. Il problema è che metodo()
fa diverse cose e richiama altri metodi, dentro ai quali a volte viene
chiamata la remove. Quindi per usare la erase dovrei passare a metodo()
l'iteratore (ma mi sembra una forzatura che metodo() conosca dettagli
relativi all'ambiente nel quale è chiamato)

 relativi all'ambiente nel quale è chiamato)
Non sono un guru del C++, ma mi sembra invece che abbia ragione Nicola: 
ci sono gli oggetti B che vanno ad agire su lista, che si trova ad un 
livello superiore rispetto agli oggetti stessi. Scusa, come fai a fare 
il remove? Penso che da qualche parte devi recuperare anche lista, o 
sbaglio?
Ciao
  Andrea

 sbaglio?
Stavo per postare esattamente la stessa domanda...
Forse una versione semplificata del codice del problema potrebbe aiutare a 
capire cosa l'OP sta cercando di fare...
--
Marco 


Se metodo() e' membro della classe B non deve avere accesso a lista.
Dov'e' il problema?
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: MySQL

Conoscete qualche metodo per connettersi ad un server MySQL?

 Conoscete qualche metodo per connettersi ad un server MySQL?
http://www.mysql.com/products/mysql++/index.html
Alex Ambro

Newsgroup: it.comp.lang.c++
Titolo: Borland C++ Builder 2009

ho installato il Code Gear per C++ Builder 2009, ma provando a compilare 
un progetto sviluppato su C++ Builder 6 ottengo una serie di errori 
nelle MessageBox:
Application->MessageBox("PROVA",
   variabile_string.c_str(), IDOK);
prima funzionava, ora mi da:
[BCC32 Error] main_code.cpp(640): E2034 Cannot convert 'const char *' to 
'const wchar_t *'
perchè????
auguri a tutti! ;-)

perchè la libreria vcl è diventata unicode
l'istruzione andrebbe riscritta più o meno così
Application->MessageBox(L"PROVA", variabile_string.w_str(), IDOK);

 Application->MessageBox(L"PROVA", variabile_string.w_str(), IDOK);
FUNZIONA! ma...è un bene che la libreria sia diventata Unicode??? :-)
grazie!


wchar_t sono i char UNICODE (non sarebbe proprio così, ma vabbè...).
Si vede che in BCB2009 la Application->MessageBox si aspetta una stringa
Unicode come argomento. Il che sarebbe anche cosa buona e giusta, ma
rompe i maroni quando compili codice legacy :-)
Prova a vedere se nelle opzioni del progetto o del compilatore c'è
qualcosa per modificare questo comportamento.

 FUNZIONA! ma...è un bene che la libreria sia diventata Unicode??? :-)
Senza dubbio sì, perché tutti i sistemi win, fin da Win95, sono
completamente unicode al loro interno: le stringhe Unicode sono più
veloci, perché win non deve fare internamente la conversione da char* a
wchar_t*. E naturalmente così quando internazionalizzi i tuoi programmi
devi risolvere un problema in meno...


Interesting
-- 
Java MFC Goldmine collections contain over 50,000 articles
on Java, C, C++, C#, VC and MFC in over 50 categories.
Tens of thousands of code snippets and examples,
expert opinions and views and tons of relevant links
on each category.
Sites contain only relevant articles on selected topics.
All noise articles were filtered out.
You can find an answer on any issue within minutes,
if not seconds.
JavaGoldmine:
 
http://javagoldmine.by.ru/index.html
Mirror:
 
http://tarkus01.by.ru/index.html
MFCGoldmine:
 
http://mfcgoldmine.by.ru/index.html
Note:
Sites are indexed by Google. To find you exactly the articles
you are looking for, use advanced search and specify site,
e.g. for MFC Goldmine,
   Search within a site or domain: 
mfcgoldmine.by.ru
For Java Goldmine Google searches, use 
tarkus01.by.ru
,
not 
javagoldmine.by.ru
. It has the biggest Google index.
If have problems accessing some article, use the mirror site.
Newsgroup: it.comp.lang.c++
Titolo: strano errore linker (2)

::_Rep::_S_max_size
collect2: ld returned 1 exit status
Insomma, non posso usare nessun operatore/funzione di assegnamento, né posso
ridefinire l'operatore = in quanto dovrei scriverlo all'interno di
basic_string<>.
Perché succede questo? Soluzione?
    Marco

 Perché succede questo? Soluzione?
A me compilano (e linkano) correttamente sia bcc 5.5.1 che 
g++ 2.95 che msvc 6.0 ...
-- 
Ciao, Marvin
 

 g++ 2.95 che msvc 6.0 ...
Ho provato a compilare da linea di comando con il bcc32 ed effettivamente
non ha dato errori. Tornando nell' IDE del C++ Builder, ho controllato le
opzioni del progetto e ho notato che l'errore si verifica perché è
selezionata (com'era per default) la voce "Dynamic RTL" nelle opzioni del
linker. Poco male, ora funziona. Usando g++ però non riesco ugualmente a
compilare&linkare.
Proverò ancora...
Grazie,
    Marco
Newsgroup: it.comp.lang.c++
Titolo: problemi nel passaggio da vector<> a list<>

Salve,
utilizzo da ormai abbastanza tempo il c++ sotto linux (compilatore gcc)
avevo scritto un programma facendo uso del container std vector<>
e tutto funziona perfettamente.
Dato pero' che inserisco ed elimino gli elementi sempre all'inizio o alla
fine del vettore, e dato che le performance sono importanti pensavo di
testare il codice usando le liste invece dei vettori ma quando ci provo
ottengo il seguente:
-------------------------------------------------------
obj_equiv_loop.h:46: error: `list' was not declared in this scope
obj_equiv_loop.h:46: error: syntax error before `>' token
obj_equiv_loop.h:58: error: 'list' is used as a type, but is not defined as
a
-------------------------------------------------------
il codice incriminato e' il seguente:
#define CONTAINER list
/...
..../
void unisce_vettori(CONTAINER<int> &puntatore_invertito_1, CONTAINER<int>
&puntatore_invertito_2);
CONTAINER<int> indici_reticolari_invertiti;
Da notare che se definisco 
#define CONTAINER vector
tutto funziona perfettamente.
Massimo

 wrote in message 
news:39njblF...@individual.net...

Non vorrei offendere ma hai provato ad includere <list> ?
Ciao
Fabio 

> Non vorrei offendere ma hai provato ad includere <list> ?
Perdono, errore stupidissimo.
Cmq ci avevo pensato ma ero convinto che come non e' necessario includere 
<vector> non fosse lo fosse neanche per <list>, 
leggendo dai libri non sembra specificata nessuna differenza "di importanza"
tra i diversi contenitori.
Grazie cmq.

 tra i diversi contenitori.
Bah... non č che ne sia proprio convinto...
Per esempio, da come descrivi l'utilizzo del tuo container, piů che un 
vector
o una list, userei una <deque>
Certo che se poi lo usi come un vector (i.e. non usi push_front) allora č
chiaro che il cambio non č "di importanza"...
-- 
Gerolamo 

 testare il codice usando le liste invece dei vettori
Perche' non deque allora? Sono fatte apposta.
-- 
[ RiK0                                ]
[ non credo negli schemi non vincenti ]
[ two is an odd prime number          ]

 <vector>
E' qui il problema...


Newsgroup: it.comp.lang.c++
Titolo: C++Builder, BDE & Configurazione

Dunque... Ho bisogno di creare un piccolo programma di configurazione per
configurare il BDE... NO... Non voglio usare il BDE Administrator... E' in
Inglese ed è difficile da usare... Dunque... Ho bisogno solo di poter creare
& modificare un Alias e di poter settare/unsettare (che pessimo verbo) il
Local Share (una delle cose che si possono configurare, in
Configuration->System->INFO) (ho notato che quest'ultimo è presente nel
Registro... Però dovrebbe essere anche nel file IDAPI32.CFG...
Il tutto in C++Builder...
La guida sull'api del BDE è incredibilmente incasinata, incompleta e
comprende addirittura errori (credo)!
AIUTO!!!!
Bye
Max

>Ho bisogno solo di poter creare & modificare un Alias
Per creare un alias da programma devi avere un componente TDatabase. Non ho
sottomano il libro fornito con il builder, ma nella sessione dedicata ai
database e' spiegato tutto abbastanza bene.
Ciao.
--
Stefano Tempesta
PC Service Software
Newsgroup: it.comp.lang.c++
Titolo: C++ managed e passaggio di stringhe per riferimento

Ciao a tutti,
spero di non essere troppo OT (nel caso me ne scuso).
ho un problema la cui soluzione credo sia banale ma non ne riesco a venire 
a capo.
in sintesi, ho una DLL scritta in C++ managed (VC2005).
questa DLL espone una classe con un metodo:
miaClasse::mioMetodo(System::String^ miaStringa);
la DLL è usata da un semplice programma scritto in VB2005.
quello che vorrei è passare miaStringa per riferimento, cosa che non mi 
riesce in nessun modo.
so che mi sto perdendo in un bicchiere d'acqua.. qualcuno mi da una dritta?
Saluti e grazie
-- 
MUH?!?
Salviamo il NG: riportiamo il bove tra noi
Palestra FIT4YOU: 
http://www.fit4you.it/

 riesce in nessun modo.
Sei sicuro che VB2005 accetti parametri per riferimento? Sospetto che
nessun linguaggio oltre a C++/CLI lo faccia. La sintassi poi non
dovrebbe essere
miaClasse::mioMetodo(System::String% miaStringa);
o qualcosa di simile?
Ciao,
Nicola

Newsgroup: it.comp.lang.c++
Titolo: convertire stringa in valori

Scusatemi domanda ?  ma sono un  programmatore alle prime armi su C++
volevo chiedervi esiste un comando che trasforma stringa in valori
es.
main()
{
        char pippo[10];
        int pipponumero;
        pippo="123";
        posso ottenere da pippo in pipponumero il valore 123   cioè
pipponumero=123
}
se è possibile mi spiegate come ???? , in basic o pascal c'è VAL che fa
questa funzione in C++ ????

 volevo chiedervi esiste un comando che trasforma stringa in valori
Con strtoul o strtol; con l'ultimo argomento zero o 10, ed il
controllo di eventuali errori attraverso il secondo.  E comunque non
ti riferisci a string, ma ad arrays di caratteri.
-- 
Maurizio Loreti  - Linux Is Not UniX -  
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 wrote in message
rmsn852...@mlinux.pd.infn.it...

Ti ringrazio tantissimo ..

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

salve
mi sorge un dubbio:
conviene usare "const int NULL=0;" oppure è già insito nella <iostream> ??
se qualcuno lo sa, mi faccia sapere...io nella <iostream> nn l'ho trovata
questa dichiarazione di NULL

 conviene usare "const int NULL=0;" oppure è già insito nella <iostream> ??
usa 0
-- 
sbi

Salve,
tanto per schematizzare, possiedo due classi A e B dove B è una classe
generica mentre posso definire la classe A sia come
class A {
 public:
  A() {}
  B *dummy;     <-----qui uso un puntatore
};
che come
class A {
 public:
  A() {}
  B dummy;     <-----qui NON uso un puntatore
};
La domanda è: in quali casi dovrei usare un tipo di definizione piuttosto
che l'altra?
Grazie

 wrote:

#include <iostream>
int main()
{
   std::cout << NULL << std::endl;
}




Il puntatore ti permette più flessibilità (comportamenti polimorfici - 
delega), mentre la composizione è più "statica".
B può essere una classe base di una gerarchia, e il puntatore riferisce
specializzazioni di B.
--
Fabio.

 
Eh si... Tipo in Java...
Sai quando ci vogliono frecce asterischi... ecc ecc, vero!? ;-)
Ovviamente nei casi in cui non ti servono comportamenti
polimorfici, evita di usare il puntatore...
--
Fabio.
Newsgroup: it.comp.lang.c++
Titolo: un compilatore plz

ho provato ad usare visual c++ ma ha troppe cose per un novellino come me.
Mi sapreste dire un semplice interprete che abbia la finestrella per
scrivere codice(magari l'indentazione automatica) con le varie colorazioni,
il debug del codice e il compilatore.
Cerco una cosa semplice per farmi le ossa.
Per farvi capire il mio livello...sono a pag. 15 del Deitel & Deitel.
Ciao
P.S. scusatemi se avrò usato termini in modo inappropriato(tipo compilatore
o interprete) ma sono proprio all'inizio.
Ciao
--
Frodo Baggins
#158 dei FeSTosi

 wrote

Non capisco cosa abbia che non vada il VC++?!?
Aprilo, fai nuovo progetto, poi scegli console project, ed in fine empty
(vuoto) project.
Poi aggiungi nella cartella source files un file .cpp
(file->nuovo->file->cpp) e ci scrivi sopra il tuo programma.
Infine premi il ! per compilarlo ed eseguirlo!
altrimenti crei un file .cpp con un normale editor, in notepad devi usare le
virgolette "file.cpp".
Una volta che hai creato questo file vuoto, clicchi 2 volte, e si apre in
VC++. Scrivi il codice poi chiedi di compilarlo ed eseguirlo.
Ti chiedera' di creare un progetto, dici di si e voila'!
QUESTO E' UN METODO ORRIBILE, MA SE TROVI IL PRIMO DIFFICILE.....
Ad ogni modo il primo non e' difficile per nulla!
Tommy

 Ciao
 Ciao :-)
--
sav(at)
despammed.com


Scusate l'OT, ma chiamare "dos" applicazioni Win32 in modalità "Console" 
non mi sembra molto appropriato.
Di questo passo anche tutti i programmi per Unix in modo testo (senza X) 
verranno chiamati "dos" ???

 verranno chiamati "dos" ???
No no, non sia mai! ;-)
Chiedo venia.  ^_^
--
sav(at)
despammed.com

 Per farvi capire il mio livello...sono a pag. 15 del Deitel & Deitel.
Guarda se usi dev c++ che scrichi gratuitamente su http:\\
www.bloodshed.net
fai una santa cosa è un gran compilatore visto il prezzo e la qualità!Ps :
Secondo me se vuoi usare un compilatore diverso dal dev ti conviene usare
quelli della Borland!!!Quelli si che sono signori compilatori!
Ciao!

 ha scritto nel messaggio
news:WrDX9.67231$0v.20...@news1.tin.it...


 Ciao! se mi dici cos'è il Deitel & Deitel ti rispondo io!
E' un libro piuttosto famoso per iniziare.
Deitel & Deitel sono gli autori (padre e figlio) e il titolo è Fondamenti di
programmazione.
Dove prendo C++ builder?
Ciao

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

Non so proprio se sto andando via di testa, ma mi e' venuto il pallino di
mettermi a "giocare" con il clustering.
Come faccio a implementare un'applicazione che sfrutti, appunto, il
clustering, sia questo attivo-attivo o attivo-passivo?
Qualcuno ne ha un'idea?
Ciao,
  Gianluca [Anthares] Colucci

 wrote in message
news:99vd75$kfv$1...@pinco.nettuno.it...

Newsgroup: it.comp.lang.c++
Titolo: Problema uso di un semplice costruttore

vi riporto la parte di codice che può servirvi a rintracciare gli errori.
File rete.h :
 class Rete {
 private :
   char*  NomeFile ;
public :
    Rete (char* _NomeFile);
    ~Rete();
 ...
File rete.cpp :
#include "Rete.h"
Rete::Rete(char* _NomeFile)
{ NomeFile =  new char[50];     // QUI E' SEGNALATO L'ERRORE!!!!
   strcpy(NomeFile,_NomeFile);
...
Errore segnalato dal compilatore (c++ Builder) :
[C++Error] Rete.cpp(12): Type 'Rete' may not be defined here.
[C++Error] Rete.cpp(12): Constructor cannot have a return type
specification.
Vi ringrazio anticipatamente per l'attenzione e se vi sembra che il codice
fornito non sia
sufficiente per il ritrovamento dell'errore fatemelo sapere .

 wrote in message
8gdl0c$c29$1...@serv1.albacom.net...


Difficile dirlo visto i tuoi snip, ma probabilmente hai dimenticato
un ";" dopo la "}" della "class Rete".
Alex
Newsgroup: it.comp.lang.c++
Titolo: chiamata a programma esterno

Salve a tutti. Sto lavorando su un programma c++ e vorrei sapere se č
possibile lanciare un eseguibile esterno quale "ls" o "dir" e copiare in una
stringa i messaggi prodotti senza che quasti vengano visualizzati nello
schermo, cioč copiare in una stringa la lista della directory senza che
questa appaia nel terminale.


usa le PIPE e redirezione l' stdout.

 ha scritto nel messaggio
news:n9%2d.9921$2T6.3...@twister1.libero.it...

un po piů esplicito riguardo a quest'ultima riga?

...

Non esiste un modo standard. Prova a rivolgerti a qualche newsgroup
specifico per l'ambiente che usi.
Ciao,
Nicola

Newsgroup: it.comp.lang.c++
Titolo: Aiuto, grafica S-VGA (DOS-VESA) con Borland C++ 5.02 ?

Salve, spero possiate aiutarmi.
Qualcuno saprebbe darmi indicazioni su come utilizzare la grafica S-VGA
(da DOS) con il suddetto compilatore (Borland C++ 5.02) ?
Il fatto è che la BGI nativa del compilatore Borland in questione mi
limita alla sola VGA (640x480x16colori), mentre risoluzioni più alte
(1024x768x256colori) le contempla solo per schede grafiche IBM (tra
l'altro vecchissime!).
Come posso fare per utilizzare la grafica S-VGA da DOS senza limitazioni
sul modello della scheda video? (mi sembra che lo standard si chiami
VESA, ma scusate eventuali cavolate, mi sono avvicinato da poco alla
programmazione).
Grazie in anticipo per chi potrà risolvere il mio problema e buona
Pasqua a tutti.
Ciao!

Ciao.
Lo standard si chiama VESA come hai scritto tu.
In giro sul web c'e' molta documentazione a riguardo.
Prova a questo sito e preparati a lunge ed estenuanti ricerche eheheh
http://www.devinfo.com/archives/x2ftp/index.html
CIAO

Newsgroup: it.comp.lang.c++
Titolo: Ma porca miseria queste interrupt

Ma porca miseria possibile che questo ca...bip di windows 95 come uno cerca
di generare una interrupt via software mi risponde con una ca..bip di
finestra blu con un errore irreversibile!!!!???!!!!
Esempio...
Borland C++ Builder, la cosa più facile del mondo:
geninterrupt(28);
28 è 1Ch
Bip...Bip Bip... Biiiiiiiiiiiiiiiiiiiip
Dove sbaglio?
Ciao e grazie per le risposte!!

28 è 1Ch
perche` mai dovresti chiamare manualmente l'int 1Ch ??
in ogni caso queste sono cose da fare sotto DOS e non sotto windows.
sotto windows si usano le api, sotto dos gli interrupt ...
--
[ranger, email: 
ran...@queen.it
]
ICQ# 6585343

sotto windows si usano le api, sotto dos gli interrupt ...
Diciamo che si possono fare anche sotto windows, tramite DOS.
Piu' che altro bisogna guardare alla compatibilita' con il sistema
operativo.
Il problema e' che chiami un interrupt legato all'orologio di sistema
e non e' una cosa molto furba !!! :)
E poi, tra l'altro, l'interrupt 1Ch non fa assolutamente nulla !
Andrea
------------------------------------------------
combatti anche tu il "nano scemo" :
http://www.geocities.com/Hollywood/Studio/6989
------------------------------------------------
Newsgroup: it.comp.lang.c++
Titolo: FUNZIONI VIRTUALI

Chi sa spiegarmi bene cosa è, come funziona, e l'utilità delle funzioni
virtuali in C++
Ringrazio anticipatamente

virtuali in C++
Non e' possibile dirlo in due parole.
Su questi argomenti si potrebbero scrivere dei libri interi.
Per farti un esempio : 
1. Tu e tuo padre racchiudete caratteristiche fisiche e di
comportamento. [Incapsulamento]
2. Tu discendi da tuo padre ed hai sicuramente caratteristiche fisiche
e di comportamento uguali e simili alle sue. [Ereditarieta']
Perche' ho detto uguali e simili ?
Perche' ci possono essere cose che fate allo stesso modo (camminare,
per esempio) e ci possono essere cose che ognuno fa a modo suo
(guidare l'automobile).
Se io impartisco il comando "Cammina" a uno di voi due ottengo lo
stesso risultato.
Se impartisco il comando "Guida" ottengo due comportamenti diversi.
[POLIMORFISMO].
Le funzioni virtuali sono quelle che vengono dichiarate nelle classi
genitori e per le quali e' prevista una definizione diversa a seconda
dei figli.

 wrote in message
38f9ba7c....@news.libero.it...


chiaro di te
Sicuramente qui dentro ci sono persone in grado di darti spiegazioni
molto migliori, anche perche' prima o poi ti scontrerai con l' "early
binding" e il "dynamic binding" e allora saranno dolori ! ;)

Newsgroup: it.comp.lang.c++
Titolo: Conversione da argv[i] a char[]

Ciao,
sto facendo un programma per l'università che prende come parametro dalla
linea di comando una serie di stringhe.
Ho bisogno di trattare queste stringhe come array di char ma non riesco a
fare il cast dalla stringa contenuta in un elemento dell'array (argv[i])
all'array di caratteri.
Questo perché si creano problemi con la dimensione di tale array di
caratteri.
In che modo posso prendere una stringa passata da linea di comando per poi
metterla in un loop per compiere azioni su ogni carattere che la compone?
Spero di aver esposto il mio problema in modo chiaro.
Grazie.
Emanuele

 dalla linea di comando una serie di stringhe.
Spero valga anche per il C++ (quello che sto scrivendo è C):
/* Possibilità 1 */
int main(int argc, char *argv[])
Oppure, se preferisci
/* Possibilità 2 */
int main(int argc, char **argv)
Spero di aver capito e di noon aver detto eccessive cretinate, è una vita
che non prendo più in mano un compilatore... ^^;;;
Marco
Newsgroup: it.comp.lang.c++
Titolo: [forse ot] semplici librerie grafiche per win32

Salve a tutti.
sto iniziando a programmare in c++. Per adesso mi sono limitato alle
applicazioni console ma vorrei esercitarmi anche facendo qualche
semplice disegnino sullo schermo. Uso vc++6 ma non vorrei subito
addentrarmi nell'uso delle mfc vorrei qualche libreria moooolto più
semplice. Se poi permette anche di rilevare almeno i click del mouse è
meglio ma posso farne a meno se ciò richiedesse una libreria troppo
complicata da usare. 
Insomma quello di cui avrei bisogno è di una semplice libreria grafica
per win32, cosa mi consigliate?
Grazie anticipatamente.
Salvo

 Insomma quello di cui avrei bisogno č di una semplice libreria grafica


Mirco
[...]
e di quale libro si tratta?
cmq, ripeto, prima di studiare le mfc volevo ferrarmi bene sul c++,
quindi una semplicissima libreria grafica per adesso sarebbe andata
piů che bene.

 più che bene.
Le GTK-- ? Pero', non le ho mai usate...(uso solo MFC col C++).
Se vuoi sviluppare applicazioni GUI col C++ potresti anche pensare ad 
ambienti tipo C++ Builder, che e' un RAD, e ti semplifica di molto la 
vita riguardo la GUI.
...pero' devo dire che questi discorsi mi sembrano un po' OT su questo 
NG, che dovrebbe parlare di C++ standard... se vuoi approfondire, ti 
conviene postare ad esempio su it.comp.programmare.win32
Ciao
Dan

ciao,
se non vuoi imparare MFC, devi studiarti qualche libreria grafica tra cui
OpenGL, DirectX (la parte grafica) o Allegro.
Per poterle usare, naturalmente devi conoscere bene il C++, non ci sono
librerie grafiche che puoi utilizzare se ancora hai problemi col linguaggio,
almeno che, non usi qualche vecchia EGAVGA o roba simile, qualcuno qui forse
la conoscerà, io non mi ricordo più, l'ho usata 10 anni fa con TurboC++ . .
. c'erano delle piccole funzioni per accendere i pixel, disegnare linee
etc...
Comunque, quanto stai ad imparare una di queste librerie, impari ad usare
MFC e ad utilizzare i device context, le penne, i brush etc... non è molto
difficile, e non devi per forza conoscere il C++ a livello professionale
(anche se te lo consiglio), quindi cerca qualche tutorials o compra un buon
libro, sul mio sito ne ho recensiti alcuni:
http://www.elementer.net
ciao,
Filippo Giacalone
elementer_...@libero.it
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 [su MFC] non devi per forza conoscere il C++ a livello professionale
Su questo concordo.
Ciao
Dan

 Per poter usare bene OpenGL basta il C, non serve il C++.
si, intendevo dire "bisogna saper programmare . . ."
ciao,
Filippo
http://www.elementer.net



Qui si parla di C++ standard, conviene spostarsi su 
it.comp.programmare.win32 per non essere OT (cosa che sei) e trovare 
piu' gente che ti sappia rispondere.
-- 
Mat/tia Belletti - Undergraduate student @ 
cs.unibo.it
ICQ: 33292311    - email: 
mbel...@cs.unibo.it
IRC: RedGlow     - site(s): 
http://www.cs.unibo.it/~mbellett
Linux registered user 299762 @ Linux registered machine 213003
Newsgroup: it.comp.lang.c++
Titolo: Manuali Borland C++ Builder

Cortesemente mi potreste indicare in quale sito è possibile trovare
i manuali editi da Borland del C++  6 Builder in italiano.
Molte grazie
Vincent

 Vincent
Nicola

 su emule esiste il manuale in italiano "guida alla progra
mmazione di cbuilder"  e anche altri libri in inglese...
a tua disposizione per ogni altro ulteriore chiarimrento..
ciao gianmarco feradini 

 ha scritto nel messaggio 
news:FjUpe.51085$795.1...@twister1.libero.it...

 su emule esiste il manuale in italiano "guida alla progra
mmazione di cbuilder"  e anche altra documentazione


Newsgroup: it.comp.lang.c++
Titolo: interfacciamento VB e C++

Salve a tutti, ho il seguente problema:
ho realizzato un programma in VB ed ora vorrei iniziare a tradurlo in C++.
Ho già capito, più o meno, come poso realizzare delle DLL in C++ e
richiamare le funzioni contenute all'interno di queste da VB; quello che non
sono ancora riuscito a fare, sempre che si possa fare, è fare in modo che
queste funzioni vadano a modificare delle variabili pubbliche definite in
VB. Forse le devo definire in C++ e poi richiamarle da VB? ma come faccio a
fare in modo che siano esèprtabili?
Aiuto...


1) E' OT in questo gruppo parlare di VB e VC++, devi andare su
it.comp.programmare.win32.
2) Se ho capito il tuo problema, la cosa più semplice è implementare le
funzioni nella tua DLL che ricevano come parametri i puntatori alle
variabili globali del progetto VB in modo che tali funzioni nella DLL
possano riassegnare i valori.

Aiuto...
Questo é comunque fuori tema su it.comp.lang.c++. Prova su
it.comp.programmare.win32.
Il Ghenio
-----------
LOVELY SARA
Dal lunedi'al venerdi'su Italia Uno alle 8:10
Non perdetevelo...
-----------


Scusa per l'OT, non conoscevo l'atro newsgroup che mi hai indicato.
Riguardo al consiglio pratico, ti ringrazio, in effetti è proprio quelloche
mi serviva.

 -----------
Scusa anche a te per l'OT, non conoscevo l'atro newsgroup che mi hai
segnalato.
Ti ringrazio per l'indicazione fornitami, in effetti, dall'alto della mia
inesperienza, avevo iniziato ad intuire che l'unica strada percorribile è
(ahimè!) quella di mettersi a studiare seriamente il C++.

Newsgroup: it.comp.lang.c++
Titolo: Cerco manuale BC++ 5.02

Sai dirmi dove trovare un manuale on line di Borland C++ 5.02?
Grazie
net...@tiscalinet.it

Sai dirmi dove trovare un manuale on line di Borland C++ 5.02?
Non ti basta tutta la documentazione online?
Bye.