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

Ciao a tutti,
sono nuovo di questo ng e spero di fare la conoscienza di molti di voi e se
è possibile mettere quel poco che so al vostro servizio.
Dunque volevo porvi una domanda e non so nemmeno se è lecita. Allora io ho
una libreria dll scritta in C. Quello che dovrei fare è crearmi un mio
programma C o C++ consigliatemi voi, che deve utilizzare le funzioni della
dll, l'unico problema è che non so come si faccia da un programma C a
richiamare delle funzioni di una dll. Se è possibile che si effettua una
chiamata del genere. Ad esempio se io nella dll ho la funzione
printdll(...), nel mio programma c come posso utilizzarla?
Grazie a chiunque mi risponda!!!

 wrote

questo NG tratta di programmazione C++ standard, quindi senza scendere nei
dettagli delle API e delle DLL etc...
per queste domande devi rivolgerti su it.comp.programmare.win32
tommy

Ciao,
Questo newsgroup si occupa del linguaggio C++ in quanto tale, e non di
aspetti specifici di particolari implementazioni, quali le DLL, che
sono un meccanismo specidfico di Windows. 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

 Nicola Musatti
Newsgroup: it.comp.lang.c++
Titolo: quale è la notazione utilizzata nel c++?

- intendo dire nella libreria standard, nella STL, nella Boost, ecc.
- per "notazione" intendo dire uso di maiuscole/minuscole, regole per
nominare variabili (una "notazione" è quella ungherese che usa
microsoft), ecc.
ma queste cose qualcuno già le sapeva... ;-D
ho notato un utilizzo molto diffuso di lettere minuscole, il che mi
piace e quindi volevo saperne di più... ad esempio in alcune funzioni
viene utilizzato l'underscore (for_each), mentre in altre vengono
unite le due parole senza usare la notazione "a cammello" (getline, la
notazione a cammello, tipica di Java, la rendrebbe getLine)
eppure qualche maiuscola c'è... 
a quanto ho visto io:
- tutte le classi iniziano con lettera minuscola
- tutte le variabili iniziano con lettera minuscola
- tutte le funzioni iniziano con lettera minuscola
il resto della "parola" è minuscola e in caso di più parole viene
utilizzato l'underscore o meno senza apparente regola precisa... non
vengono però mai usate le maiuscole
le lettere maiuscole vengono invece utilizzate per le classi
"templatizzate", nelle dichiarazioni:
template<class ForwardIterator, class T>
ForwardIterator find_linear (ForwardIterator first,
                             ForwardIterator last, T& value) { 
al di là dello stile personale di ognuno, voi cosa sapete di queste
regole non scrite (o sono scritte da qualche parte?) di notazione del
c++ standard/stl/boost/ecc.?
-- 
]\/[ad]\/[age (
www.mindreamz.net
)
"Un Maestro insegue semplicemente la sua visione di Eccellenza in
qualunque cosa sta facendo e lascia agli altri decidere se sta 
lavorando o giocando. A lui sembra sempre di fare entrambe." - Anonimo

 c++ standard/stl/boost/ecc.?
Per Boost sono scritte: 
http://www.boost.org/more/lib_guide.htm
Ciao,
Nicola
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.lang.c++
Titolo: definizione operatore binario con Tipo come argomento

dati
class Base;
class Derived : public Base;
Base* base;
Derived* derived;
è possibile definire tramite macro e/o template un nuovo operatore AS 
tale che si possa scrivere
derived = base AS Derived;
invece di
derived = dynamic_cast<Derived*>(base);
grazie in anticipo

 grazie in anticipo
ciao
Soviet_Joker

 derived = base AS Derived;
Mi pare di no. Si possono ridefinire solo gli operatori esistenti nel 
linguaggio, che devono mantenere la loro arietï¿œ (cioï¿œ gli operatori 
binari devono rimanere binari), la loro precedenza, e la loro 
associativitï¿œ. Inoltre non si possono passare tipi come argomenti di 
operatori o funzioni, ma solo come argomenti di template, e questi 
ultimi devono essere racchiusi tra parentesi angolari.
Eventualmente puoi scrivere:
   derived = base.AS<Derived>()
   derived = AS<Derived>(base)
   derived = AS(base, derived)
   derived = AS(derived, base)
   AS(base, derived)
   AS(derived, base)
oppure:
   derived # *base
dove il carattere "#" rappresenta un operatore binario diverso da "=".
Per esempio, se vuoi scrivere:
   derived += *base;
ecco un'implementazione:
   template <class D> Derived* operator+= (D*& d, Base& b)
     { return d = static_cast<D*>(&b); }
Per poter usare "dynamic_cast", la classe "Base" o una sua superclasse 
avrebbe dovuto contenere almeno un metodo "virtual".
Comunque, a mio avviso, e' sconsigliabile ridefinire operatori per 
classi che non rappresentano numeri, stringhe o comunque oggetti molto 
semplici.
-- 
Carlo Milanesi
http://carlomilanesi.wordpress.com/

 semplici.
+1
-- 
-riko
http://www.enrico-franchi.org/
http://rik0-techtemple.blogspot.com/
Newsgroup: it.comp.lang.c++
Titolo: URGENTE!!! Problemi con l'apertura di documenti!

Salve,
	ripropongo il mio ormai annoso dilemma, sperando che qualcuno
	risolva questo problema che mi sta tenendo inchiodato ai manuali.
	Devo chiudere un file .mdb aperto con una GetDocuments().
 
	Ho usato
		 CloseAllDocuments(FALSE);
	poi ho provato ad aprire un documento nuovo. Niente da fare!
	"...l'applicazione ha compiuto una operazione non valida...". 
	Allora, per la chiusura del documento attivo,
	ho anche provato rendendo globale il puntatore
	CDocument e poi ho provato a chiuderlo con 
 
		DeleteContents()
	In quest'ultimo caso non ho errori, pero' non mi chiude il
	file .mdb, che, rimanendo aperto, non e' suscettibile di
	cancellazione o rinominazione.
	Pongo di seguito il codice da me scritto:
	      il codice commentato e' la variante che puo' essere sostituita a
	      CloseAllDocuments()
		//	pDoc->DeleteContents();
			AfxGetApp()->HideApplication();
			AfxGetApp()->CloseAllDocuments(FALSE);
			// Si cerca l'handle del primo file della directory
			hf = FindFirstFile("C:\\Analisi\\DBAnalisi.mdb",&df);
			.............................
			............................. (istruzioni non significative)
			OnFileNew();
        qui ho l'errore ------->	m_mSet = &GetDocument()->m_MultiSet;
			if (m_mSet->IsOpen())
				m_mSet->Close();
			m_mSet->Open();
	Se qualcuno ci capisce qualcosa mi faccia sapere.
	Grazie ancora.
	Bye
	   Enrico	



...


m_pDb->Open("xxx.mdb")
	Ho scritto questo codice prima di
	m_mSet = &GetDocument()->m_MultiSet;
	if (m_mSet->IsOpen())
	      m_mSet->Close();
	m_mSet->Open();
	Pero' ho ottenuto sempre lo stesso errore al GetDocument().
	Penso che il problema non stia tanto nell'aprire il file ma il
	documento generico, al quale le tabelle sembrerebbero 
	collegate.
	Bye
	  Enrico
Newsgroup: it.comp.lang.c++
Titolo: passaggio da C++ a Visual C++

ciao a tutti, sono un programmatore fresco fresco di istituto tecnico,
avendo acuisito le basi del C/C++ vorrei passare alla programmazione
"seria" in Visual C++ ma non so come cominciare. Che cosa devo imparare
per passare a visual C++, poi Visual C++ è un linguaggio di
programmazione basato su eventi o cosa ?? aiutatemi anche con un
semplicissimo programma per iniziare.
grazie

 wrote in message
news:3963B9B4...@inwind.it...

Puoi usare il prodotto Visual C++ della Microsoft per scrivere
programmi C++ sostanzialmente standard (esso presenta qualche
variazione rispetto allo standard, ma nulla di davvero drammatico),
e tutto quel che devi imparare a questo scopo e` come chiedere
all'ambiente di sviluppo Visual Studio di fare una "Win32
Console Application" (File/New.../Projects/Win32 Console
Application).  Partira` un Wizard cui puoi in particolare
chiedere di generarti una "Hello World Application", che e`
proprio il "semplicissimo programma per iniziare" che chiedi.
Se intendi sviluppare tipologie di progetto non coperte dagli
standard C++ (DLL, componenti COM, applicazioni grafiche, ecc,
ecc), la cosa principale che devi imparare e` che il newsgroup
giusto per tutti questi aspetti e` it.comp.programmare.win32.
In secondo luogo dovrai scegliere fra i tanti framework usati
in Visual C++ quello specifico per cui intendi sviluppare.  Se
ad esempio vuoi usare le nude API ("Win32 Application"), allora
troverai vari "semplicissimi programmi per iniziare" come parte
del mio tutorial sulle API di Win32, su 
aleax.supereva.it
.  Ma
la cosa fondamentale e` che di qualsiasi argomento non davvero
attinente al C++ standard si parla su it.comp.programmare.win32,
non qui; it.comp.lang.c++ va lasciato alle tantissime discussioni
sul linguaggio C++ usato in modo standard e portatile (molto del
tuo uso di uno specifico compilatore, qualunque esso sia, non
dipendera` naturalmente dal compilatore stesso, ma dal linguaggio
C++ e sue librerie standard in tutta la loro complessita`; e per
questi temi, it.comp.lang.c++ e` proprio il newsgroup giusto).
Alex

 "seria" in Visual C++ ma non so come cominciare. Che cosa devo imparare
Embeh, vuoi passare alla programmazione seria con un compilatore della
Microsoft?!     ;-p
Ma sei proprio sicuro?!
Scherzo...
Daniele.
------------------------
#exclude <windows.h>

"seria" in Visual C++ ma non so come cominciare.
Cosa c'e` di poco serio nel C++ standard?
Cmq, considerato le conoscenze che puoi aver ricevuto a scuola,
il mio consiglio e` di approfondire il linguaggio standard che non e`
poca cosa.
Paolo
--------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
--------------------------------------------------

Forse per programmazione "seria" intende quella con le finestrelle, i
campetti ed i bottoncini :-)
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: [gtkmm] accel_key personalizzato

Dato un Gtk::MenuItem, com'è possibile applicare ad esso una
combinazione personalizzata per attivarlo?
Ho provato così:
menu_item.set_accel_key(ctrl_z);
dove ctrl_z è Gtk::AccelKey('z', Gdk::CONTROL_MASK)
Il problema è che la funzione membro set_accel_key() è protetta.
Ho letto nella documentazione ufficiale del metodo set_accel_path() ma
non mi è chiaro il suo utilizzo (non ho chiaro a dire il vero neanche
se c'entri con il mio problema).
Grazie,
s.

Chiedo scusa, dovevo inviarla a it.comp.os.linux.development
s.
Newsgroup: it.comp.lang.c++
Titolo: DefDlgProc

Salve a tutti !
Ormai, ne sono sicuro, ne avrete piene le tasche di programmatori
principianti (in Win32) come me, che arrivano sempre con le loro stupide
domande !!
Ma avrei veramene bisogno di aiuto ! Sono 6 ore che sto dietro a questo
miserevole programma e non riesco a farlo funzionare come vorrei io !
In teoria dovrebbe semplicemente aprire una finestra e aprire all'interno di
essa un dialogo con 1 bottone che dovrebbe far chiudere l'applicazione.
Questo mi riesce in parte... non riesco a capire perchè se tento di chiudere
il dialogo non succede assoulutamente nulla !!!!!!!
La mia documentazione parla di una funzione, DefDlgProc che non posso però
usare all'interno della DlgProc !!! E allora dove posso usarla ?
Beh, potrebbe essere che stia sbagliando qualcosa io (MOLTO FACILE) per cui
riporto il breve listato qui di seguito (il menu, l'icona e il dialogo sono
resources fatte col visual c++ 5.0).
#include<windows.h>
#include<stdio.h>
#include"resource.h"
HANDLE IstP;
HWND Dialogo1;
BOOL CALLBACK Inizio (HWND DialogHandle, UINT Messaggio,
       WPARAM ParametroW, LPARAM ParametroL)
{
 switch(Messaggio)
 {
 case WM_INITDIALOG: return TRUE; break;
 case WM_COMMAND: if(LOWORD(ParametroW) == IDC_BUTTON1) ExitProcess(1);
return FALSE; break;
 case WM_QUIT: DestroyWindow(DialogHandle); // Questo non funziona !!!!!!!!
 default: return FALSE;
 }
}
LRESULT CALLBACK FinestraPrincipale(HWND Hndl, UINT Mess, WPARAM
         ParametroW, LPARAM ParametroL)
{
 switch(Mess)
 {
 case WM_COMMAND: if(LOWORD(ParametroW)==APRIDIALOGO)
Dialogo1=CreateDialog(IstP,MAKEINTRESOURCE(DIALOGO1),Hndl,(int(__stdcall*)(v
oid))Inizio);  // perchè se non specifico il tipo di puntatore mi da error?
      return 0; break;
 default: return DefWindowProc(Hndl,Mess,ParametroW,ParametroL);
 }
}
int WINAPI WinMain(HINSTANCE IstExe, HINSTANCE IstPrec,
       LPSTR Parametri, int nComandi)
{
 static char NomeClasse[] = "Prova";
 HWND Hndl;
 WNDCLASS Finestra1;
 MSG Messaggi;
 char c;
 IstP=IstExe;
 if(!IstPrec)
 {
  Finestra1.style=CS_VREDRAW | CS_HREDRAW;
  Finestra1.lpfnWndProc=FinestraPrincipale;
  Finestra1.cbClsExtra=NULL;
  Finestra1.cbWndExtra=NULL;
  Finestra1.hInstance=IstExe;
  Finestra1.hIcon=LoadIcon(IstExe,MAKEINTRESOURCE(IDI_ICON1));
  Finestra1.hCursor=LoadCursor(NULL,IDC_ARROW);
  Finestra1.hbrBackground=GetStockObject(WHITE_BRUSH);
  Finestra1.lpszMenuName=MAKEINTRESOURCE(MENU1);
  Finestra1.lpszClassName=NomeClasse;
  RegisterClass(&Finestra1);
 }
 Hndl=CreateWindow(NomeClasse,"Prova !!",WS_OVERLAPPEDWINDOW,
       CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
       CW_USEDEFAULT,NULL,NULL,IstExe,NULL);
 ShowWindow(Hndl,SW_SHOWNORMAL);
 do
 {
  c=GetMessage(&Messaggi,Hndl,0,0);
  TranslateMessage(&Messaggi);
  DispatchMessage(&Messaggi);
 }
 while(c != 0 && c != -1); // se non uso la variabile c ma testo solo la
funzione non funge ! Perchè ?
 UnregisterClass(NomeClasse,IstExe);
 return 0;
}
Ecco, questo è il tutto.
Vi ringrazio anticipatamente per una gentile risposta...

Prova su it.comp.programmare.win32
Newsgroup: it.comp.lang.c++
Titolo: offerta di lavoro - Torino - I-Med

iMed SpA (Torino) ricerca personale da inserire nel proprio team di
ricerca e sviluppo.
Tra le figure attualmente ricercate, le seguenti richiedono un'ottima
conoscenza del C++:
( la lista completa dei profili è all'indirizzo
http://www.i-medlab.com/Job/page1.php
 )
     * Development expert / Sviluppatore Senior
       Addetto al coordinamento e integrazione delle linee di sviluppo
SW in team
     * Programmatore esperto
       Addetto allo sviluppo di interfacce userfriendly per sistemi di
supporto alla diagnosi medica per immagini, con specializzazione in
rendering 3D basato su OpenGL
     * Programmatore
       Addetto all'integrazione all'ottimizzazione di moduli
specialistici e SW
L'impresa sviluppa software di imaging medicale e diagnosi assistita al
calcolatore in ambiente GNU-Linux.
Se interessati/e, compilare il form on-line:
 
http://www.i-medlab.com/Job/page1.php
Grazie per l'attenzione,
--
Marco Becchio
I-MED Medical Imaging Lab
http://www.i-medlab.com
via Livorno, 60
10144 Torino (TO) - Italy (I)
Palazzina CS Centro Servizi
TEL +39 011 22.57.932
FAX +39 011 22.57.939

 ricerca e sviluppo.
Perchè una società di software dovrebbe mettere un annuncio per cercare 
programmatori esperti in un newsgroup invece di rivolgersi ad un 
selezionatore o mettere un annuncio su giornali specializzati? Non 
ditemi che è tanto difficile trovarne.
Più in generale, ma sono un pò paranoide o anche per voi questi annunci 
nei NG puzzano di fregatura?

 nei NG puzzano di fregatura?
Considerato che tempo addietro ne avevo inviato uno anch'io, direi che
dipende :-)
Quando e' specificato chiaramente chi compie la ricerca e ci sono dei
recapiti ufficiali e permanenti (ovvero *non* indirizzi yahoo o
hotmail), ed il profilo cercato corrisponde con gli argomenti trattati
nel newsgroup non ci vedo niente di male.
Nello specifico ho dato una rapidissima occhiata al loro sito e mi pare
che si presentino ragionevolmente.
Ciao,
Nicola

 nei NG puzzano di fregatura?
Se puo' interessare io ci sono andato a colloquio, tempo fa, stipendio
ridicolo, azienda composta da un solo dipendente, ufficio fantasma in
sharing con altra azienda.
Gente senza esperienza che se la tira da guru che ti fanno domandine prese
da test online.
Consiglio tenersi alla larga.
Ovviamente il mio parere non e' oro.
Ciao!
Newsgroup: it.comp.lang.c++
Titolo: flex e yacc [forse OT]

Salve a tutti,
amici scusate la domanda .... ma non so' proprio dove poter cercare una
risposta.
Qualcuno di voi mi puo' illuminare su i "compilatori" flex e yacc ?
Questi due esseri "si possono" trovare per Windows ?
Come posso fare delle prova ... non avendo un ambiente LINUX o UNIX?
Grazie a tutti
Scusate in anticipo se x caso è OT.
Cmq penso di no perchè questi due esseri ... si muovono con il C... :-)
Grazie

 Cmq penso di no perchè questi due esseri ... si muovono con il C... :-)
Ma non sono C standard, che e' l'argomento di questo NG. Cmq se guardi i 
siti ufficiali e google avrai sicuramente tutte le informazioni che 
cerchi. In generale, ti consiglio Cygwin sotto windows, per quanto enorme...
-- 
/**
  * Mattia Belletti - Undergraduate student @ 
cs.unibo.it
  * ICQ: 33292311   - email: 
mbel...@cs.unibo.it
  * IRC: BluShine   - site(s): 
http://cs.unibo.it/~mbellett
  * Linux registered user 299762 @ Linux registered machine 213003
  */

 Ma non sono C standard, che e' l'argomento di questo NG. 
A dire il vero l'argomento di questo newsgroup e' il *C++* standard.
Ciao,
Nicola

sei OT, cmq 
http://www.monmouth.com/~wstreett/lex-yacc/lex-yacc.html
-- 
]\/[ad]\/[age (
www.mindreamz.net
)
"Un Maestro insegue semplicemente la sua visione di Eccellenza in
qualunque cosa sta facendo e lascia agli altri decidere se sta 
lavorando o giocando. A lui sembra sempre di fare entrambe." - Anonimo

 Questi due esseri "si possono" trovare per Windows ?
Windows? lex e yacc sono scritti in ANSI C, e producono ANSI C. Ovunque 
ci sia un compilatore C, lex e yacc funzionano. Se non sai dove trovare 
una distribuzione in codice sorgente di una qualsiasi loro variante e/o 
come compilarla, trovi eseguibili precompilati praticamente ovunque. Il 
signor Google saprà indicarti il dove e il come
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.5. C, C++ and ASM developers
                               and beta testers are welcome!

Newsgroup: it.comp.lang.c++
Titolo: Arrrg...Ancora Aiuto

Come si fa la fusione di 2 files txt creati con delle stringhe lette da
tastiera
dovrei prendere la prima stringa del primo file seguita dall prima del
secondo e cosi via
grazie per eventuali risposte

 secondo e cosi via
Qualcosa di simile (molto rudimentale e senza controlli):
#include <iostream>
#include <fstream>
#include <string>
int main()
{
    ifstream in1( "FILEIN1.TXT" );
    ifstream in2( "FILEIN2.TXT" );
    ofstream out( "FILEOUT.TXT" );
    string word1, word2;
    while ( in1 or in2 )
    {
        if ( in1 >> word1 ) out << word1 << ' ';
        if ( in2 >> word2 ) out << word2 << ' ';
    }
}
EMG

 wrote in message
392F9388...@flashnet.it...

Newsgroup: it.comp.lang.c++
Titolo: struct dereference

In Pascal esiste un bell'operatore "width" che
mi permette di dereferenziare piů variabili
all'interno di un record (le struct del C/C++),
in questo modo:
With nomeRecord do
begin
   campo1:=123;
   campo2:=...;
   ...
end;
Esiste qualcosa di simile in C++ ?
E` solo una comodita`, nel caso volessi inizializzare 100 campi di una
struct e sono pigro e non voglio scrivere 100 volte:
nomeStruct.campo1= 31231;
nomeStruct.campo2= ....
nomeStruct.campo3= ...
.....
grAzie.
-- 
Every program is a part of some other program, and rarely fits.

 Esiste qualcosa di simile in C++ ?
Qualcosa di simile esiste.
E' sufficiente fare coincidere this con nomeRecord.
Kiuhnm

 
100 campi in una struct mi sembrano piuttosto eccessivi.
In ogni caso anche il "with" del Pascal (non sono sicuro che ci sia 
anche nel Pascal standard, ma sicuramente c'e' in Delphi) non sempre e' 
solo rose e fiori. A volte la comodita' che fornisce si paga con 
maggiore probabilita' di errore umano nella scrittura del codice (spesso 
dovuta alla mancanza di chiarezza di scope di variabili e funzioni).
--
Roal Zanazzi

 dovuta alla mancanza di chiarezza di scope di variabili e funzioni).
Sì in effetti lo pensavo, però per pochi campi (molti meno di 100 ;) )
pensavo che la comodità non portasse confusione, ma in effetti per pochi
campi non è neanche 'sta gran scomodità scrivere tutto.
-- 
Human beings were created by water to transport it uphill.

> anche nel Pascal standard, ma sicuramente c'e' in Delphi)
C'è anche nel Pascal standard.

 tutto.
L'interessa in Pascal era proprio quando c'erano Record di
Record di Record... Allora, la posto di "a.b.c.d.campo1",
"a.b.c.d.campo2", etc., si faceva:
    with a.b.c.d do
    begin
        ...
    end
Solo in generale i nuomi erano più lungi di a, b, c, e d. (Se
no, non c'è interessa.) In C++, è sempre possibile a fare:
    Doh& x = a.b.c.d ;
    x.campo1 ...
Ma anche qui, non vale la pena che si l'imbricazione è grande.
--
James Kanze                                           GABI Software
Conseils en informatique orientée objet/
                   Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, 
+33 (0)1 30 23 00 34
Newsgroup: it.comp.lang.c++
Titolo: Overload Casting

E' possibile overloadare il casting ?
Mi spiego meglio: ho una classe "Klasse" (che tra l'altro è una template)
devo riuscire a fare qualcosa del genere:
....
Klasse<int> A
Klasse<float> B = (float)A
....
l'unica cosa che non so fare è overloadare l'operatore di casting, è
possibile? e se si come?
Grazie a chi mi darà una mano.
*S^S*

 possibile? e se si come?
Io definirei invece la cosa all'interno dell' operator= di Klasse
Che ne dici?
--
Gerolamo

 Che ne dici?
E come ?
template <class T> class Klasse{
    .......
    Klasse<T>& operator = (const Klasse<T>& x)
                            {
                                 ???   ma il tipo T può essere solo quello
nella dichiarazione della template, allora ?
                            }
    .......
}
è ovvio che non posso fare cose del tipo:
template <class T1, class T2> class Klasse {
    Klasse<T1>& operator = (const Klasse<T2>& x)
   }
altrimenti quando istanzio la classe dovrei sapere il "futuro" tipo (T2 per
intenderci).
spero di essermi fatto capire, lo sento che ci deve essere una buona
soluzione ...
Ciao
*S^S*

     .......
Innanzitutto, l'operatore assegnamento non c'entra molto con quelle che
sembravano le tue esigenze. (Nel tuo esempio sopra ci sono delle
inizializzazioni, che non sono assegnamenti, sebbene vi compaia il segno
'='.)
Detto questo, tu puoi comunque templatizzare separatamente costruttori e
qualsiasi funzioni membro (non virtuale), compreso operator=().
Ad esempio, se vuoi che un Klasse<T1> sia costruibile a partire da un
Klasse<T2>:
   template < class T >
   class Klasse
    {
            public:
            template< class U >
             Klasse( const Klasse<U> & that ) { /* ... */ }
   /*...*/
Poi potrai scrivere:
 Klasse<int>   a;
 Klasse<float> b( a );
Max

  Klasse<float> b( a );
Perfetto grazie, era quello che cercavo, però ora ho un altro problema:
 template < class T >
class Klasse
  {        protected:
               T Goal;
            public:
              template< class U > operator = (const Klasse<U>& that){ //
intanto devo necessariamente implementarla all'interno della def. della
classe altrimenti mi da errore
Goal = (T)that.Goal; //errore .Goal non accessibile
 
}
/* .. */
"Ovviamente" mi da errore perchè Klasse<T> e Klasse<U> vengono viste come
classi diverse e quindi perdo il "protected"? ma allora come posso fare
senza mettere Goal public ?
Ciao
*S^S*
Newsgroup: it.comp.lang.c++
Titolo: metodo virtuale puro restituisce classe astratta ?

Ciao.
E' possibile dichiarare in una classe astratta un metodo virtuale puro che
come valore di ritorno abbia una classe anch'essa astratta ?
Tipo
class B
{
	virtual pippo() = 0;
};
class A
{
	virtual B pluto() = 0;
};
Ok, mi rispondo da solo: No, visto che il gcc non mi consente di farlo.
Come mai non posso ? C'è un modo per farglielo fare ? Tecnicamente vorrei
definire che chiunque erediti A implementandone il metodo pluto() lo
faccia in modo che pluto restituisca una classe derivata di B.
Chiaro no ?:)
Ciao
MTc++

 come valore di ritorno abbia una classe anch'essa astratta ?
No. Puoi perň restituire un puntatore o un reference a una classe astratta.
Questo sě. Inoltre, in virtů della covarianza del tipo di ritorno, la
stessa funzione in una classe derivata puň restituire un
puntatore/riferimento a una classe derivata dal tipo di ritorno originale.
Restituire per valore una classe astratta non č possibile. Una classe
astratta non puň essere instanziata.
Max

Newsgroup: it.comp.lang.c++
Titolo: Consiglio manuale

Ciao a tutti, vorrei cominciare a sviluppare applicazioni MFC. Premetto che
consoco già un po' il C, qualcuna sa consigliarmi un buon manuale (magari
anche free su internet)? Grazie mille a tutti
Giuseppe

Giuse ha scritto:

it.comp.programmare.win32
SiMoStro

 SiMoStro
Ok, grazie mille, cambio ng
Giuseppe
Newsgroup: it.comp.lang.c++
Titolo: Client-server multipiattaforma ?

Salve,
sto scrivendo un'applicazione fatta di client che raccolgono dati, li 
inviano ad un server che usa un rete neuronica per analizzarli e 
comunica quanto scopre ad un agente simbolico.
L'applicazinoe la sto facendo utilizzando C++ e libreria FOX ( 
www.fox-toolkit.org
 per chi č interessato, secondo me č molto valida ), 
e vorrei che l'architettura client/server non mi leghi troppo al 
particolare SO. Avrei perciň bisogno di utilizzare qualche libreria che 
si 'sforzi' di essere multipiattaforma, ho guardato BOOST ma siccome non 
ho moltissimo tempo vorrei qualcosa di piů light...
Grazie in anticipo,
j0k3r

 
Oddio, che mi sono perso ? Di cosa parli ??
Ciao

 Ciao
Ho letto, vale la pena di dare uno sguardo, solo che non ho capito dove 
scaricare il tutto.... :|
Ciao e grazie...

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

Non riesco a configurare il djgpp in maniera corretta come posso farlo?

 Non riesco a configurare il djgpp in maniera corretta come posso farlo?
Leggendo la documentazione e seguendola?
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

Newsgroup: it.comp.lang.c++
Titolo: importdll?!?! EXPORT CLASS...

Salve!
In C++ quali sono i comandi-termini alternativi di  (... secondo me c'era 
qualcosa di simile che valeva anche per il compilatore bc 3.1 ... ma non
riesco a trovare nessun aggancio utile...)
__cdecl 
__cplusplus
_declspec(dllimport)  
il mio problema e'  riuscire ad esportare una mia classe da un dll... 
					Grazie mille!
*****************************************************************************
+                                                                          
+	HAPPY SURFING ON THE NET !!                     	Ciao!!!
+        								
+	                                by
+
+							  C R I X 98
+
***************************************************************************
--
Posted from 
mta2.iol.it
 [195.210.91.152]
via Mailgate.ORG Server - 
http://www.mailgate.org

_declspec(dllimport)  
Il C++ Standard non ha alcun supporto per l'uso di DLL separate;
qualunque caratteristica ad esse relativa e` dunque, necessariamente,
una estensione proprietaria (non-standard) del linguaggio.
Le estensioni, a norma di standard, devono usare identificatori
che iniziano con 2 underline (sempre a norma di standard, nessun
programma C++ "strictly compliant" deve usare nessun identificatore
siffatto; questo permette di garantire che un programma strictly
compliant compilera` su qualunque compilatore compliant, anche
se quest'ultimo aggiunge "keyword" eccetera).
Alex
Newsgroup: it.comp.lang.c++
Titolo: Errore che non capisco

stavo provando a fare una sorta di libreria per un'IA che segue dei
riflessi semplici percezione-azione-valutazione dell'esito.
Ho preparato la libreria e l'ho compilata (tuttavia ho dovuto fare una
modifica, sostituendo dei puntatori con degli array statici, ma ora
viene compilata regolarmente).
Sorgenti: 
http://www.neoborn.com/users/pinkfloyd/prova.zip
Dopodichè ho preparato un programma client di prova, e l'ho compilato.
Una volta avviato il build, il linker mi ha segnalato TUTTE le
funzioni come "already defined".
Questo usando Visual C++ .NET
Ho notato che, se invece le funzioni vengono implementate all'interno
di una classe, Visual Studio builda, altrimenti no.
Cioè ho un file Libreria.cpp:
class Classe
{
public: void Funz();
};
Classe::void Funz()
{};
e, singolarmente, lo compila normalmente.
Ma se la includo ed utilizzo in un programma, mi segnala tutte le
funzioni come already defined.
Se invece Libreria.cpp è così:
class Classe
{
public: void Funz() {};
};
compila e linka regolarmente.
Quindi la prima domanda è: 
1) Possibile che un compilatore come Visual Studio non accetti una
sintassi simile, o, più probabilmente, ho sbagliato qualcosa io?
Successivamente ho provato a compilare con MingW32 senza modificare
nulla, e il build è terminato con successo (nessun errore di doppia
definizione).
Il problema è che, una volta avviato l'eseguibile, mi dà un errore di
segmentazione.
Quindi la seconda domanda è:
2) Mi date un'occhiata al sorgente? :D
Mi sono bollito la testa per un'ora dietro all'errore 1) e adesso non
riesco più a capire da cosa è causato quell'errore.
Grazie a chi risponderà.

{};
Non sono per nulla esperto ma *forse* il problema potrebbe essere
questo: la definizione delle classi e delle funzioni va fatta nei file
.h (header file) che devono contenere le direttive al precompilatore
per evitare inclusioni multiple, mentre l'implementazione va nei file
.cpp.
Es.:
prova.h
#ifndef PROVA_H
#define PROVA_H
class Classe
{
public: void Funz();
};
#endif
---------------------------------------
prova.cpp
#include "prova.h"
Classe::void Funz()
{};
----------------------------------------
main.cpp
#include "prova.h"
// CODICE CHE UTILIZZA LA LIBRERIA
[cut]

 .cpp.
Anche perche` altrimenti se si mette anche la dichiarazione nei .cpp deve
includere il .cpp, che e` qualcosa che mi fa un poco specie.
Io avrei spezzato la dichiarazione della classe in un header file e
lasciato la definizione sola nel .cpp
-- 
RiK0
[ non credo negli schemi non vincenti ]
[     two is an odd prime number.     ]

lasciato la definizione sola nel .cpp
che e' quello che intendevo io infatti
Newsgroup: it.comp.lang.c++
Titolo: Curiosità per i miei estimatori (Giuseppe, Eunrico Maria)

(Lo so che non č win, ma tanto siete dappertutto!)
Di questo "mostro" che non ho ancora capito se funziona o se non fa niente
cosa ne dite?
L'ho copiato da un libro DOS piů vecchio di me, non capisco se attiva il
pixel ma non lo vedo perché la finestra win č bianca (non nera come quelle
dos) oppure se non fa nulla.
Cosa ne pensate?
P.s del prog non di me ;-)
Ciao Fulvio
#include <stdio.h>
#include <stdlib.h>
#include <dos.h>
void attiva_modo();
void traccia_punto();
int modo;
int i,x,y;
int main(void)
{
    modo=4;
    x=200; y=200;
    attiva_modo( );
    traccia_punto();
    getchar();
    modo=3;
    attiva_modo();
}
void attiva_modo()
{
union REGS ireg;
ireg.h.ah = 0;
ireg.h.al
 = modo;
int86 (0x12,&ireg, &ireg);
}
void traccia_punto()
{
union REGS ireg;
ireg.h.ah = 0x0c;
ireg.h.al
 = 1;
ireg.x.dx = x;
ireg.x.cx
 = y;
int86(0x12,&ireg, &ireg);
}

Cambia il colore di fondo alla finestra dos oppure cambia
colore per il pixel...
Paolo
-----------------------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------------------------

 wrote in message
37d5a145...@proxy.cli.di.unipi.it...


 int86(0x12,&ireg, &ireg);
ma non si dovrebbe chiamare l' int h10?
Quella che hai inserito è una subroutine in assembler,
qui non ho la documentazione, cmq basta che ti cerchi
un tutorial sull' utilizzo degli interrupt del DOS in asm.

 wrote in message
37D8BA55...@neomedia.it...

Newsgroup: it.comp.lang.c++
Titolo: domanda stupida da neofita

Buongiorno, perdonate l'ardire ma sto imparando adesso con Borland 6 (di cui
non conosco manuali in italiano, chi ne avesse o conoscesse uno può
indicarlo, grazie).
Ho il seguente problema: inserisco un numero in una text box e voglio
passarlo a una variabile integer:
a=Edit1->Text;
non l'accetta perché è impossibile convertire il tipo AnsiString in Int
a>>Edit1->Text;
non va bene perché passa  il puntatore.
Come faccio?

la VCL non fa parte della libreria standard, qui sei OT ... dovresti andare
sui newsgroup della gerarchia borland (
news.borland.com
, ma oggi è offline!)
cmq tanto x .. guardati la doc di AnsiString .. ha qualcosa che fa al caso
tuo

Scusate per l'Off Topic.
Nella doc sull'AnsiString non trovato nulla (o non capito)
"Antonio" <a[NULL]mazzeo@email[DOT].it> ha scritto nel messaggio
news:lrjcb.344254$lK4.10...@twister1.libero.it...


 Nella doc sull'AnsiString non trovato nulla (o non capito)
Fidati nella documentazione c'e'!
Comunque devi utilizzare questo metodo ToInt in questo modo
int a=Edit1->Text.ToInt();
Riepilogo metodi AnsiString
		AnsiCompare
		AnsiCompareIC
		AnsiLastChar
		AnsiPos
		AnsiString
		ByteType
		c_str
		CurrToStr
		CurrToStrF
		data
		Delete
		FloatToStrF
		FmtLoadStr
		Format
		FormatFloat
		Insert
		IntToHex
                IntToHex
		IsDelimiter
		IsEmpty
		IsLeadByte
		IsPathDelimiter
		IsTrailByte
		LastDelimiter
		Length
		LoadStr
		LowerCase
		operator !=
		operator []
		operator +
		operator +=
		operator <
		operator <=
		operator =
                operator ==
		operator >
		operator >=
		Pos
		printf
		SetLength
		sprintf
		StringOfChar
		SubString
		ToDouble
		ToInt
		ToIntDef
		Trim
		TrimLeft
		TrimRight
		Unique
		UpperCase
		WideChar
		WideCharBufSize
Ciao


con le libreri della Borland c'e'  IntToStr()   e StrToInt()
quindi.. :
a= StrToInt(Edit1->Text);
dovrebbe funzionare (nn ho gli attrezzi sottomano x provare..)
ciao.
Chucky.

Newsgroup: it.comp.lang.c++
Titolo: Need help converting a string to a float...

I'm having this weird problem where my code does the following 
conversion from string to float:
27000000.0 -> 27000000.00
2973999.99 -> 29740000.00
2989999.13 -> 2989999.25
The number on the left is the string I get after tokenizing a bigger 
string.  The number on the right is the number I get after the conversion.
I've tried two different ways of converting, one way the older C way 
using atof, and another more C++ way.  Either way, I get the same 
result.  Can anyone shed some light on this for me?
Here's the code:
	string token;
	string tokens[14];
	stringstream iss;
	getline(fin,bfr);
	while (getline(fin, bfr))
	{
		iss << bfr;
		i = 0;
		while (getline(iss, token, ','))
		{	
			tokens[i++] = token;
		}
 
		std::istringstream b(tokens[0]);
		b >> price;
 
		//price = atof(tokens[0].c_str());

 2989999.13 -> 2989999.25
I think this is due to the fact that internally double numbers are 
stored in base 2 and you are reaching the max precision of the numbers. 
If you want to make financial computations you should store numbers in 
base 10.
E.
PS. This is an italian NG.
Newsgroup: it.comp.lang.c++
Titolo: mysql & postgresql

Salve a tutti
ho un problema per quanto riguarda la connessione a database 
come mysql e postgresql sotto linux. 
Ho sempre adoperato il pro-C per quanto riguarda Oracle ma da tutte le
ricerche che ho fatto, per connettermi e quindi interrogare uno dei 
due database di cui sopra, mi viene sempre riportato a PHP.
E' possibile che non ci sia un qualcosa di diretto?
Qualcuno può darmi un aiutino (aiutone) in merito ?
Grazie
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Qualcuno puņ darmi un aiutino (aiutone) in merito ?
Qui sei OT, dato che si parla di C++ standard. Al tuo posto cercherei
sui siti dei due prodotti.
Ciao,
Nicola


come mysql e postgresql sotto linux. 
E il C++ ?
Non venirmi a dire che lo stai facendo in C++ e quindi quanto chiedi
e` in-topic, perche` sarebbe dire che chiedere consigli su come si
scalano le montagne dell'Himalaya con le scarpe rosse e` in topic su
it.dicussioni.scarpe-rosse...

Newsgroup: it.comp.lang.c++
Titolo: Funzioni composte... impossibili in C++?

Salve,
potreste indicarmi perché non compila e perché mi diche che y non è 
dichiarata?
Grazie
#include <iostream>
void pippo (int x) {
        void pluto (int y = 6) {
                std::cout << y << std::endl;
        };
};
int main () {
        pippo (5);
        return 0;
}
-- 
Luigi
--
bug windows [5] = {"95", "98", "NT", "Me", "2000"};

dichiarata?
In C++ non e' possibile definire delle funzioni "locali" che
accedano automaticamente alle variabili locali della funzione
in cui sono definite. Questa e' una comodita' presente ad
esempio in Pascal che pero' *non* e' presente in C++.
Con le classi locali si puo' emulare qualcosa di *simile*
alle funzioni nidificate...
  #include <iostream>
  void foo( int x )
  {
    struct X
    {
      int& x;
      X(int& xx) : x(xx) { }
      void nested()
      {
        std::cout << "x = " << x << std::endl;
        x++;
      }
    } local(x);
    local.nested();
    local.nested();
    local.nested();
  }
  int main()
  {
    foo(10);
    return 0;
  }
Nota che pero' le istanze della classe locale non possono
accedere alle variabili "auto" della funzione e che quindi
queste variabili devono in qualche modo essere passate
(nell'esempio ho passato la variabile locale x al
costruttore dell'istanza "local" che ha associato a questa
variabile un reference; grazie a questo reference la
funzione "nested" puo' accedere a x).
HTH
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff
Newsgroup: it.comp.lang.c++
Titolo: STL: priority_queue

Salve a tutti,
ho dei dubbi riguardo alla priority_queue fornita dalle STL:
Devo generare una coda di strutture di questo tipo:
struct rec_t
{
  int id;
  char buf[100];
};
vorrei che la coda fosse ordinata secondo il valore dell'attributo
id della struttura.
Sto cercando qualche riga di codice di esempio sulla sintassi da utilizzare
(ho dei dubbi anche su come fornire al metodo push il criterio
dell'ordinamento).
Ho trovato del materiale in rete, ma gli esempi si basano sull'ordinamento
di semplici interi e gli altri esempi non sono molto chiari...
Grazie in anticipo per eventuali risposte
Ciao

 criterio dell'ordinamento).
Devi devinire l'operatore < per la tua classe
ciao
--
Gerolamo

Devi devinire l'operatore < per la tua classe
Ti ringrazio!
Ora ho le idee piu' chiare e funziona a meraviglia!
Grazie
Ciao

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

Ciao a tutti,
qualcuno sa perchè utilizando la funzione per creare i thread,
_beginthread()
e passando una funzione di un classe definita pubblica con prototipo
void Funz(void*);
la funzione _beginthread mi segna errore?
grazie in anticipo

dui...@yahoo.it
 (duidols) wrote in news:ce762fcf.0311100742.1d77d435
@
posting.google.com
:

Perche' non si possono passare metodi di una classe come puntatori a 
funzione..nn c'e' nulla da fare.
La funzione in questione deve essere "a se stante", non puo' far parte di 
una classe, nemmeno se la dichiari statica.
Newsgroup: it.comp.lang.c++
Titolo: Una preghiera

Salve a tutti,
prima di ogni cosa mi scuso sinceramente per l'intrusione, ma ho un
problema e così....
Premetto che sono iscritto a Ing. Informati e devo sostenere a giorni
l'esame di Calcolatori, avrei quindi bisogno di una copia del
macroassembler della Microsoft, possibilmente in versione 5.....
E lo so che siamo ai confini della legalità ma per uno studente
sarebbe arduo pagarsi tutto il software di cui ha bisogno!
Immagino che sto facendo la figura del piratello che non ha mai
scucito una lira.... invece vi posso assicurare che per tutto lo
shareware che utilizzo ho sempre cercato di fare arrivare i dovuti
dollari (una volta anche lire) all'autore.
Così se fosse possibile per qualcuno di voi inviarmi una versione
zippatissima del suddeto alla mia E-mail gli sarei molto grato e
potrei anche corrispondergli un caffè in caso di fortuito, ma in
questo caso dovrei dire fortunato, incontro!!!
Ancora mille scuse per l'intrusione 
Raffaele il Profeta
dlmonaco***@
tin.it
Per rispondere rimuovere i tre asteroidi ;-)


-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/
       Search, Read, Discuss, or Start Your Own    

problema e cosě....


 Assembler? E' molto piu' immediato da usare ed e' free.
Ci daresti il link, please?


,

Scusate:
http://www.web-sites.co.uk/nasm/


Dome
Ti ringrazio per l'informazione e per la tua disponibilità. ;-)
Ho provato a contattarti (e farti un fischio!) via e-mail, ma con poco
successo... 
Se per te non è una grossa seccatura, ti sarei veramente molto grato
se mi inviassi il suddetto Masm al mio indirizzo
Ciao ;-)
***************************
*   Raffaele del Monaco   *
*  
dlmonac...@tin.it
  *
*      ICQ# 24874442      *
***************************

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

xkè la funzione _beginthreads mi dice ke nn la trova (undeclared
identifier)??
io includo "process.h" e ho guardato personalmente e li c'è il protoripo
della funzione, ma poi mi dice ke nn c'è!!!!!
:-(
poi,
unsigned long _beginthread( void( __cdecl *start_address )( void * ),
unsigned stack_size, void *arglist );
come faccio a passargli la funzione??
_cdecl funzione (PVOID);
_beginthread(funzione(),....); va bene???
grazie!!!!

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 
forums.borland.com
 (in inglese)
Grazie,
Nicola Musatti

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

Cioč? Che devo fare ?
Scusa, ma non so cosa č la linea di comando. Mi puoi aiutare ?

 wrote in message
8hp15l$oq6$1...@serv1.albacom.net...

Newsgroup: it.comp.lang.c++
Titolo: Bitmap e Bottoni!!!

Come posso includere una bitmap in un Command Button in visual c++?
Ho provato con SetBitmap , ma non ne vengo a capo.
Grazie.

Qui sei fuori argomento. Chiedi su it.comp.programmare.win32 .
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: [?] - Devo caricare una BMP sullo sfondo di una View

Sto realizzando un progetto con  Visual C++ 6.0 con MFC. Il tipo di progetto
è Single Document. Ho la necessità di caricare una BMP quando clicco su un
pulsante della toolbar. La BMP va cariacata nella view e va centrata
opportunamente.
Come faccio a caricare la BMP ?
Grazie anticipatamente a tutti.

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 
forums.borland.com
 (in inglese)
Grazie,
Nicola Musatti

Newsgroup: it.comp.lang.c++
Titolo: bmp da contesto

Vorrei sapere come prelevare una bitmap da un contesto di visualizzazione
per poi visualizzarla , dopo alcune trasformazioni, in un altro contesto di
visualizzazione

 wrote in message
wK1n3.46983$lQ1....@typhoon.libero.it...

Se l'ambiente e' Win32 o Win16 : bisogna creare un device context in memoria
in cui copiare il bitmap con la funzione BitBlt, in questo device context il
bitmap puo' essere manipolato, infine basta copiarlo nel device context
finale ancora con BitBlt.
Set l'ambiente e' un altro : non ne ho la minima idea.

Newsgroup: it.comp.lang.c++
Titolo: dove trovo un programma per programmare in c ?

Sapreste dirmi dove posso trovare un programma a basso prezzo o, se esiste,
gratis,
per programmare in c ?
Per una risposta scrivete a:    
alex...@iol.it
Grazie.

...


Ciao,
    gratis c'e' lo gnu (ma sono tanti MB da scaricare) lo trovi su
www.cygnus.com/misc/gnu-win32/


Grazie.
Ciao.
Roberto Gerola
Newsgroup: it.comp.lang.c++
Titolo: Chiamare una funzione membro non const

da una const.
Cioč:
class A
{
    void FunzioneConst() const;
    void FunzioneNonConst();
};
void A::FunzioneNonConst()
{
// Modifico degli attributi della classe
}
void A::FunzioneConst() const
{
    FunzioneNonCost();  <--- Qui c'č l'errore su this che č const.
}
Esiste una sintassi per dire al compilatore che so quel che sto facendo
(seguendo la filosofia ad esempio del const_cast) e di lasciarmi andare
avanti?
Grazie, Fbf.

 avanti?
Credo si possa usare proprio const_cast<>.
 	const_cast<A*>(this)->FunzioneNonConst();
Max

const_cast<> su this.
Paolo
-------------------------------------------
  Paolo Marotta
 
http://web.tiscalinet.it/paolo_marotta/
-------------------------------------------

         ((A*)this)->FunzioneNonCont( );
Oppure con
const_cast < A* >( this ) -> FunzioneNonConst();
EMG

     FunzioneNonCost();  <--- Qui c'è l'errore su this che è const.


duramente punito .... )
A parte che sarebbe meglio usare i cast c++ e non quelli c-style,
ma il punto e` che una funzione const puo` richiamare solo funzioni
const!


 La keyword in questione è "Mutable".
Si scrive con tutte minuscole.
EMG

const!
sul gcc 1.1.2 mi segnala un warnig; ma non me lo impedisce ( non che sia una
prova ... ). Puoi essere piu' chiaro ? Se c'e' un motivo per questo
comportamento ( oltre all'ovvio non senso, ma se e' questa l'esigenza ... )
..
Newsgroup: it.comp.lang.c++
Titolo: come leggere dei dati da un file?

Scusate la domanda da newby!
Ho un file con una stringa, due interi e un float.
esempio:
eta 33 55 34.65
var 4 6 43.222
xxx 5 3 0.343
media 5 7 34.2233
Come leggere questi dati?
come fare qualcosa di simile:
per ogni riga{
str=stringa;
x1=primo intero;
x2=secondo intero;
f=float;
...
elabora str,x1,x2,f
...
}
Grazie in anticipo,  Mario.

 Scusate la domanda da newby!
Ehm... "newbie", non "newby"... :P

Studiati std::ifstream. Non ti scrivo codice perche' puoi benissimo 
trovare tutto il materiale che ti serve in rete.
-- 
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

 ha scritto nel messaggio
news:ccj7bd$4gj$1...@le1.cs.unibo.it...


 Grazie ancora, Mario.
 
Le riche non esistono per il programma, e' tutto una sequenza di dati
separati da spazi dovresti fare quindi la seguente:
stream_file>>parola
stream_file>>dato1>>dato2>>dato3;
all'interno di un loop per estrarre tutte le righe.
Massimo

' (or there is no acceptable conversion)
Error executing cl.exe.
distanze.obj - 2 error(s), 0 warning(s)
-------------------------------
se provo con str<<fdati va anche peggio
ho provato tutte le permutazioni con <<,>>,fdati, e str ma senza riuscita!
Forse per fare questa parte č meglio che cambi linguaggio! ormai sono
distrutto!
Mario.

 ha scritto nel messaggio
news:zR6Hc.40596$GQ3.1...@twister2.libero.it...



Questa operazione, per quanto corretta, non ha molto senso, perche
mostrerebbe l'indirizzo di memoria di fdati (il punto di parteza dello
stream, non il nome del file aperto.
Inoltre mancano le parentesi graffe {} :


 # include <conio.h>
una segnalazione: questa libreria non è standard (c'è solo su alcuni
compilatori per Windows, se non erro) e rischi di non poterci fare
affidamento se cambi compilatore.
ciao e buona programmazione.