mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: Un piccolo problema

Scusate, sono un principiante ed utilizzo il compilatore Borland C++
5.0.
Dovendo analizzare una stringa in ingresso e prendere delle decisioni in
base ai  suoi singoli
caratteri, domando come posso individuare il carattere apice che riporto
fra parentesi (')
poiché non riesco a definirlo come un carattere normale.
Ripotro, di seguito, un esempio di quello che mi servirebbe:
char* a;
cin >>a;
for (int i=0; i<strlen(a); i++)
     if a[i]==apice .....
........................
In Pascal si poteva individuare scrivedone quattro di seguito (''''), ma
qui non funziona.
Vi ringranzio anticipatamente dell'attenzione.
Stefano

poiché non riesco a definirlo come un carattere normale.
    const char apice = '\'';
Il backslash fa da "quote" per l'apice immediatamente seguente.
Alex

On Wed, 13 Jan 1999 20:31:17 +0100, 
bi...@tuttocitta.it
 wrote:
Divi utilizzare la sequenza escape per l'apice (\' cioe` backslash seguita dall'apice).
cioe` quello che in pascal sarebbe (inserisco degli spazzi per chiarezza) " ' "
in C++ diviene (occhio sempre agli spazi che sono messi solo per chiarezza) ' \' '
Paolo
----------------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
  e-mail: 
mar...@cli.di.unipi.it
 
----------------------------------------------------------
Newsgroup: it.comp.lang.c++
Titolo: Documentazione delle classi della libreria standard

Dove trovo la documentazione completa online delle classi della libreria
standard libg++ ??
Vorrei avere una lista commentata dei vari metodi e membri delle varie
classi standard, insomma qualcosa che assomigli al MSDN del visual c++,
perche' guardando solo gli header non ci capisco una fava !
--
Visita la mia pagina personale:
 
http://members.xoom.it/Ake
*** grafica - ingegneria - midi - humour ***
****  abandonware - emulatori - MUD ****
 ***             DragonBall / Z                ****
Il Covo di Ake ora e' anche senza fili,
visitalo con il tuo cellulare WAP a:
 
tagtag.com/ake

 standard libg++ ??
Un qualunque libro di C++, sotto "Libreria Standard".  Stroustrup, e/o
Lippmann, e/o Josuttis, e/o ... .
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 wrote in message
rm8zcbo...@mlinux.pd.infn.it...


 da suggerire ?
Si quotare bene.
Ciao
Gaetano.
-- 
Posted from 
nts-03.mm.eutelsat.org
 [194.214.173.15] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 da suggerire ?
 qui c'e' un buon corso di C++ on-line, che copre anche la standard
library:
http://www.icce.rug.nl/docs/cplusplus/cplusplus.html


standard libg++ ??
Non esiste una sola libreria standard, ne esistono diverse fornite da
vari produttori ( Dinkumware, RogueWave,ecc..), e le documentazioni
complete di solito si trovano acquistando il compilatore che le
fornisce.
Il Ghenio
---------
These are my parting words to you:
those who give up are doomed!

 perche' guardando solo gli header non ci capisco una fava !
la libreria standard libg++ non la conosco, è specifica del tuo
compilatore. Se vuoi la documentazione dell'STL standard puoi andare
al link qui sotto:
http://www.sgi.com/tech/stl/
che è piuttosto completo ed esauriente. Manca però la parte che
concerne gli stream, che non fanno parte dell'STL. Se ti serve pure la
documentazione di quelli non saprei aiutarti, passo la palla a qualcun
altro.
Ciao

> Si quotare bene.
LOL
Newsgroup: it.comp.lang.c++
Titolo: Template di classe e problema con il linking

Ho un problema con il linker, che mi da errore quando definisco un templete
di classe in file header (TempleteClass.h) e la sua implementazione in un
altro file (TempleteClass.cpp). Il messaggio di errore non si verifica
quando definizione e implementazione sono nello stesso file main.cpp.
//
// TempleteClass.h
//
#ifndef TEMPLATECLASS_H
#define TEMPLATECLASS_H
template <class T>
class TemplateClass
{
  public:
    TemplateClass();
    void set(T value);
    T get();
  private:
    T m_value;
};
#endif // TEMPLATECLASS_H
//
// TempleteClass.cpp
//
  [Linker error] undefined reference to `TemplateClass<int>::set(int)'
#include "TemplateClass.h" // class's header file
template <class T>
TemplateClass<T>::TemplateClass()
{
  m_value = 0;
}
template <class T>
void TemplateClass<T>::set(T value)
{
  m_value = value;
}
template <class T>
T TemplateClass<T>::get()
{
  return m_value;
}
Kaos.

 template
 
http://www.parashift.com/c++-faq-lite/templates.html#faq-35.13
M

 ha scritto nel messaggio
news:dr93v9$buf$1...@newsreader.mailgate.org...

Newsgroup: it.comp.lang.c++
Titolo: il sito cresce!

Ragazzuoli il sito ed il forum crescono soprattutto grazie al vostro aiuto.
Se avete articoli, manuali, tutorial o altro ancora inviatemelo che lo
publicherò volentieri!!!
www.programmando.org
Cia'! :))
--
Massimiliano Etere
massimili...@programmando.org
http://www.programmando.org

 ha scritto nel
messaggio news:a6o5re$dko$2...@fe2.cs.interbusiness.it...


manda manda!!!
:)))


Newsgroup: it.comp.lang.c++
Titolo: conversione da intero a binario...

Salve a tutti,
ho una variabile "int source" che contiene un numero intero (in base dieci).
Mi servirebbe costruire una funzione che inserisce nella variabile char
dest[N] (N arbitrario o comunque sufficientemente grande)
la rappresentazione del valore di source in base binaria.
So che in C++ non esistono funzioni native per fare ciņ.
Per esempio se source=45,
dovrą essere
dest[0]='1'
dest[1]='0'
dest[2]='1'
dest[3]='1'
dest[4]='0'
dest[5]='1'
Come posso fare?
Grazie a chi vorrą aiutarmi.
Ciao!
Mister ?

Mister ? wrote:
<snip>
Potresti provare qualcosa tipo:
    int source = 45;
    bitset<32> b(source);
    string s(b.to_string<char, char_traits<char>, allocator<char> >());
    char dest[32];
    strcpy(dest, s.c_str());
-- 
error: can't open ~/.signature

     char dest[32];
Ovviamente, intendevo scrivere:
      char dest[33]; // ;)


     strcpy(dest, s.c_str());
Si, e probabilmente l'autore della domanda programmasse in stile C++ e
non in stile C potrebbe evitare di passare il tutto in un array di
caratteri e rendere la cosa piu' semplice:
bitset<sizeof(source)*8> b(source);
cout << b << endl;
come esempio ho stampato i bit a schermo. Ma quando hai un bitset puoi
fare tutto quello che fai con un char[].
ovvero:
cout << b[2] << endl;
stamperebbe il 3o bit partendo dal lsb.
ha senso trasformarlo in un char[] solo se si deve passare ad una
vecchia funzione scritta in C ad esempio.
Tommaso
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

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

Salve!
Se leggete questo messaggio prima di domenica alle 13....
mi sapreste indicare un compilatore mini per un 486 magari anche in dos....?
sto imparando e devo andare in trasferta con un portatile sfigatissimo....!
grazie!
--
    --------------
   ----------------         
dodi...@tiscalinet.it
  ---------|--------
   --------|-------            ICQ: 36959563
    ------_|------
         - (_)# -

ok! già trovato!
fa niente!


Newsgroup: it.comp.lang.c++
Titolo: Manuale in italiano di BISON

Salve,
esiste un sito con la traduzione in italiano del manuale di BISON (GNU)
?
Grazie anticipatamente

 writes:

Che io sappia no.  Sotto 
http://www.gnu.org/home.zh.html
 ce ne e' una
in cinese, pero'; va bene lo stesso?
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 in cinese, pero'; va bene lo stesso?
Ho qualche problema con gli UNICODE altrimenti andrebbe benissino !!!
Newsgroup: it.comp.lang.c++
Titolo: Sicuramente mi sto perdendo in un bicchier d'acqua...

Sicuramente e' qualcosa di ovvio, sara' che ieri ero stanco e stanotte non 
ho dormito per il caldo, ma non ci arrivo:
typedef double const cdouble;
void torba(cdouble **filters)
{
  // legge da filters
}
void monnezza() {
  double **fuffa = new double *[100];
  torba(fuffa);
}
errore:
catrame.cpp(12) : error C2664: 'torba' : cannot convert parameter 1 from 
'double **' to 'cdouble **'
Lo so che e' ovvio, sfogatevi pure con gli insulti... ma mi spiegate che gli 
prende a visual C++?
Il tutto tenendo conto che questa invece funziona alla perfezione:
typedef double const cdouble;
void torba(cdouble *filters)
{
  // legge da filters
}
void monnezza() {
  double *fuffa = new double[100];
  torba(fuffa);
}
Salumi,
--*PaN!* 

 'double **' to 'cdouble **'
Un "T**" non è convertibile in un "T const **".
La regola dice che è possibile convertire tra "T*" e "T const *". Applicando
questa regola a "T**" deduciamo che questo può essere convertito in
"T*const*", che è altra cosa da "T const **".
Se -per assurdo- la tua funzione, che richiede un "double const **",
accettasse anche un "double**", potrebbe usare quel puntatore per assegnare
a (*fuffa) un "double const *", che non può ragionevolmente essere
consentito.
Max
PS: ho usato appositamente la notazione "T const" in luogo di quella
equivalente di "const T", proprio perché questo è uno di quei casi in cui
la possibilità di mettere il 'const' in fondo (o in testa, a seconda di
come la vedi) può trarre in inganno.

 come la vedi) può trarre in inganno.
E' lo stesso motivo per cui ho deciso, per l'esempio, di usare un typedef ;)
Grazie per l'aiuto istantaneo =)
--
Marco
Newsgroup: it.comp.lang.c++
Titolo: Compilatori gratuiti

Salve a tutti,
 mi dite se c'e' e dove posso trovare (magari in edicola per evitare
lunghi download) un compilatore C++ gratuito per WIN9x ?
 Se c'e' mi dite che librerie usa (immagino non le MFC) ?
Grazie.
-------------------
mimmo....@ntt.it
-------------------

 wrote in message
37a05fde...@news.ntt.it...

Il migliore compilatore free per Win9x e WinNT che ho trovato si puo'
scaricare da 
http://sourceware.cygnus.com
Si chiama Cygwin. E' grande circa 14MB. E' una versione beta, ma sembra che
funzioni.
Dovrebbe avere tutte le librerie standard ANSI del C++ e ha anche le STL.
Permette di
chiamare le funzioni di Win32. E' costruito apposta per riprodurre sotto
WinNT o Win9x un ambiente simile Unix. Funziona molto bene per i programmi
in modo Console; ho avuto pero' dei problemi con il compilatore di risorse
mettendo un'icona all'intero di una finestra di dialogo.

Su 
inter.net
 di agosto c'è la versione completa di Borland C++ Builder.
Usa MFC e OWL.

Newsgroup: it.comp.lang.c++
Titolo: Scusate se insisto

Ciao e scusate se posto nuovamente la stessa domanda, ma sui manuali non ho
trovato nulla a riguardo o forse non ho cercato bene...
le variabili statiche e i puntatori statici li devo inizializzare al di
fuori della definizione della classe, ma quando poi devo distruggere ogni
riferimento all'oggetto puntato dal mio pointer di tipo static, dove devo
scrivere queste istruzioni??? non nel distruttore dato che non sarebbe
logico e anche perche' ci ho gia' provato e il linker si e' infervorato
abbastanza...
ciao e grazie in anticipo!!!

 scrivere queste istruzioni???
Al posto di usare puntatori, usa std::auto_ptr<nomedellaclasse>. Cosě si
distruggono serenamente all'uscita del programma.
Ciao,
--
zello


 distruggono serenamente all'uscita del programma.
adesso non č che si possa suggerire di usare la classe auto_ptr per
qualsiasi scopo, ricordiamo che, per esempio, non puoi utilizzare gli
auto_ptr dentro ai contenitori STL.
Dai un'occhiata alle classi dedicate alla gestione dei puntatori della
libreria boost (
www.boost.org
) e capirai cosa intendo.

Newsgroup: it.comp.lang.c++
Titolo: NT services

Ciao a tutti,
dovrei programmare un service per NT.
Sapete dove posso trovare della documentazione e/o esempi al riguardo?
Grazie

,

Nel
Platform SDK\Windows base Services\Dll Processes Threads\Services
disponibile online oppure con MSDN assieme al tuo compilatore
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/
       Search, Read, Discuss, or Start Your Own
Newsgroup: it.comp.lang.c++
Titolo: Caratteristiche...

Salve gente!
Ho intenzione di imparare il c++ ma prima avrei qualche quesito da porvi (al
quale spero mi rispondiate nel modo pių esauriente possibile):
1. Quali sono le caratteristiche del c++ che lo contraddistinguono da altri
linguaggi (tipo il C siccome conosco solo quello)?
2. Mi conviene impararlo?Perchč?
3. Il C mi servirā ancora o mi confonderā solo le idee?
4. Quali sono le cose che ha in pių o in meno rispetto al c?
5. Mi indicate un BUON libro in ITALIANO?
Ringrazio di cuore tutti coloro che mi risponderanno.
Un grande saluto, Sara.
P.S.Utilizzo win95 e le mie conoscenze del C non sono approfondite!

 
Purtroppo no... Posso comunque *Sconsigliartene* uno "C++ Corso di
programmazione" di Lippman II edizione: IMHO e' una schifezza se
paragonato a "The C++ Programming Language" di Stroustrup che sto
leggendo ora (comunque mi hanno detto che la terza versione in inglese 
e' molto migliore).
Ciao,
-- 
Diego Dainese
-> Per le repliche elimina dal mio indirizzo le cifre e le `x'.

 leggendo ora
Strano. A me lo Stroustrup (almeno la II edizione) sembra un libro
assolutamente inutile, non buono né per imparare né da consultazione.
EMG

 
Mah, io ho la terza edizione, e finora (ho letto i primi 8 capitoli)
l'ho trovato molto chiaro e approfondito. 
Forse non e' strutturato in maniera ottimale (quasi in ogni paragrafo
c'e' un reference a qualche altro paragrafo del libro) e probabilmente
e' pessimo come tutorial, ma per il resto mi sembra di gran lunga
superiore all'altro che ho citato.


5. Mi indicate un BUON libro in ITALIANO?
Se hai intenzione di usare il Builder, è ottimo Learning C++ in 21
days (in italiano "Borland c++ builder, la guida ufficiale"), un libro
tutt'altro che completo, ma IMHO una delle migliori introduzioni al
C++ e alla programmazione OO. Lo Stroustrup è un po' pesetto, ma IMHO
è ottimo.
Newsgroup: it.comp.lang.c++
Titolo: [STL] Cancellare elementi in un vettore

Salve a tutti
c'è un modo per cancellare un elemento casuale in un vettore
senza dover ricorrere agli iteratori?
Sto cercando di scrivere il motore di un gioco di briscola (
gioco di carte). Ho il vettore con le carte ordinate, e devo
trasferirle "randomizzate" in un altro vettore.
Vi posto tutto il codice, casomai dovesse servire. Saranno
un paio di kb.
Grazie in anticipo :)
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
enum {ORO, SPADE, COPPE, BASTONI};
enum {ASSO, DUE, TRE, QUATTRO,
      CINQUE, SEI, SETTE, DONNA, CAVALLO, RE};
enum {MAX_SEME = 3, MAX_CARTE = 9};
class carta {
 private:
 int Valore;
 int Seme;
 public:
 carta();
 carta(int, int);
 inline void SettaValore(int);
 inline void SettaSeme(int);
 inline int intTornaValore();
 inline int intTornaSeme();
 string strTornaValore();
 string strTornaSeme();
};
carta::carta() {
 Valore = 0;
 Seme = 0;
}
carta::carta(int val, int sem) {
 Valore = val;
 Seme = sem;
}
string carta::strTornaSeme() {
 string temp;
 switch (Seme) {
  case ORO: temp = "Oro"; break;
  case SPADE: temp = "Spade"; break;
  case COPPE: temp = "Coppe"; break;
  case BASTONI: temp = "Bastoni"; break;
  default: temp = "Errore";
 }
 return temp;
}
string carta::strTornaValore() {
 string temp;
 switch (Valore) {
  case ASSO: temp = "Asso"; break;
  case DUE: temp = "Due"; break;
  case TRE: temp = "Tre"; break;
  case QUATTRO: temp = "Quattro"; break;
  case CINQUE: temp = "Cinque"; break;
  case SEI: temp = "Sei"; break;
  case SETTE: temp = "Sette"; break;
  case DONNA: temp = "Donna"; break;
  case CAVALLO: temp = "Cavallo"; break;
  case RE: temp = "Re"; break;
  default: temp = "Errore";
 }
 return temp;
}
inline void carta::SettaValore(int val) {Valore = val;}
inline void carta::SettaSeme(int val) {Seme = val;}
inline int carta::intTornaValore() {return Valore;}
inline int carta::intTornaSeme() {return Seme;}
int main() {
 srand(time(0));
 srand(rand());
 int i = 0;
 int j = 0;
 vector<carta> mazzoOrdinato;
 vector<carta> mazzo;
 for(j = 0; j <= 3; j++) {
  for(i = 0; i <= 9; i++)  {
   carta temp(i, j);
   mazzoOrdinato.push_back(temp);
   cout << temp.strTornaValore() << " di " << temp.strTornaSeme() << endl;
/*test*/
  }
 }
 int random = 0;
 for(i = 0; i <= 39; i++) {
  random = rand() % mazzoOrdinato.size();
  mazzo.push_back(mazzoOrdinato[random]);
 }
 return 0;
}
--
Lupin85© - FILSer #2
Founder di #fils
--
Sign in allestimento

Forse l'algoritmo "random_shuffle" puo' fare direttamente al caso tuo.
Ciao,
Nicola

 Forse l'algoritmo "random_shuffle" puo' fare direttamente al caso tuo.
questi sono quei momenti della vita in cui, guardandoti allo specchio,
ti senti un emerito idiota.
Grazie mille :)

Newsgroup: it.comp.lang.c++
Titolo: Codice C++ errato

Salve, volevo chiedervi se questo frammento di codice è errato ma puo'
essere compilato ugualmente ?
Diciamo che è un operazione di ciclo infinito.
#include <iostream>
using namespace std;
int main() 
 {
 
  int a=5000,t;
  int b,s;
  int c,g;
  int i,j;
 
  (*a)++;
  b = &a;
  c = *a;
 
  if(c!=b){
    c++;
     }
  if(::) {
  g = s;
  j * t;
    }
  for(i<0; i>=100; i++)
     cout << i << " \n";
 
   return 0
 }
 
 
Distinti saluti


Ciao,
No, perchè è pieno di errori di sintassi.
fabiomdf
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

      cout << i << " \n";
Qui la i vale 0 (perche' l'hai dichiarata all'inizio del programma e non hai
mai modificato il suo valore) quindi la condizione i>=100 non viene mai
eseguita quindi il programma esce subito dal ciclo for e non stampa niente.
Posso chiederti che cosa avevi in mente? :)
Ciao

 hai mai modificato il suo valore)
Non č esatto. E' stata definita, ma essendo una variabile automatica non č
stata inizializzata a 0 automaticamente.
Max

 stata inizializzata a 0 automaticamente.
Beh si, dicevo appunto che non ha subito modifiche dalla sua definizione.

definizione
Si, ma non hai nessuna garanzia sul suo valore, le probabilita'
che valga 0 sono circa una su 4 miliardi ;-)
Fabio

 che valga 0 sono circa una su 4 miliardi ;-)
Si, non avevo notato che era dentro il main :P
Ciao
Newsgroup: it.comp.lang.c++
Titolo: Scambio dati tra finestre di dialogo e applicazione.

Ciao a tutti,
sto realizzando un'applicazione tipo il Paint con il Visual C++ usando
le MFC.
La struttura dell'applicazione consiste di una splitter window con due
pannelli; il primo contiene gli strumenti per il disegno (scelta della
figura, del colore, ecc.) ed è un Dialog, (nelle proprietà ho
selezionato lo stile Child), mentre il secondo pannello è l'area di
disegno definita attraverso una classe derivata da CView.
Il mio problema consiste nello scambio di dati tra il dialog e la
vista, in particolare non riesco a far funzionare il meccanismo di
aggiornamento della figura selezionata e del colore selezionato
attraverso lo scambio di valori tra le variabili membro del dialog e
le variabili membro della vista.
La cosa strana è che tale scambio avviene con successo allo start up
dell'applicazione, ma poi non avviene più quando gestisco il messaggio
per le operazioni di disegno (funzione OnLButtonUp).
Allego lo snippet di tale funzione sperando che qualcuno mi illumini
sui miei misfatti.
Ciao.
 Raffaele
void CPaintArea::OnLButtonUp(UINT nFlags, CPoint point) 
{
	// TODO: Add your message handler code here and/or call default
	//Il punto dove è stato cliccato il tasto destro del mouse è il punto
finale della figura
	m_ptFine=point;
	CClientDC dc(this);
	CPen pen;
	COLORREF color;
	//Quì dovrebbe avvenire lo scambio tra la varibile membro del dialog
e la relativa della vista
	m_ColoreSelezionato = m_SysDlg.m_ColoreSelezionato;
	switch (m_ColoreSelezionato) {
	case 0:{
		color = RGB(255,0,0);
		break;
		   }
	case 1:{
		color = RGB(0,0,255);
		break;
		   }
	case 2:{
		color = RGB(0,0,0);
		break;
		   }
	case 3:{
		color = RGB(0,128,0);
		break;
		   }
	}
	pen.CreatePen(PS_SOLID,1,color);
	CPen *pOldPen=dc.SelectObject(&pen);
	dc.SelectStockObject(NULL_BRUSH);
	//Anche quì dovrebbe avvenire lo scambio tra la varibile membro del
dialog e la relativa della vista
	m_FiguraSelezionata = m_SysDlg.m_RadioLinea;
	switch (m_FiguraSelezionata) {
	case 0:{
		dc.MoveTo(m_ptInizio);
		dc.LineTo(m_ptFine);
		break;
		   }
	case 1:{
		dc.Rectangle(CRect(m_ptInizio, m_ptFine));
		break;
		   }
	case 2:{
		dc.Ellipse(CRect(m_ptInizio, m_ptFine));
		break;
		   }
	}
	dc.SelectObject(pOldPen);
	//Ripristino il puntatore del mouse
	m_FlagLButtonPressed = FALSE;
	SetCursor(AfxGetApp()->LoadStandardCursor(IDC_ARROW));
}

  Raffaele
ciao

 
Si, chiamo UpdateData(TRUE) dopo ogni pressione di un tasto per
scegliere la figura o il colore, ma non succede nulla.
Ho provato ad effettuare lo stesso tipo di selezioni con un Dialog
modale ed il tutto funziona normalmente; che non dipenda dal
particolare tipo di dialog che sto usando ossia un Child Dialog
derivato da CFormView ?
Ciao, Raffaele

 Ciao, Raffaele
fammi sapere come è andata ,ciao

 fammi sapere come è andata ,ciao
Possibilmente non su it.comp.lang.c++, dove siete OT.
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: "Nessuna informazione di debug..."

Scrivo per chiedere cosiglio su un errore di visual studio .NET 2003...
Praticamente, dopo aver scritto un programma in c, quando premo F5 per il
debug mi compare un messaggio "nessuna informazione di debug (nessun simbolo
caricato) in devenv.exe....".
Come posso fare per risolvere questo errore???
Ringrazio sin d'ora chiunque possa aiutarmi.
Ciao, Dom

 ha scritto nel messaggio
news:tXRVb.212376$VW.87...@news3.tin.it...



:'-((
Newsgroup: it.comp.lang.c++
Titolo: Problema con array (somma)

PROVA:
Quanti valori vuoi inserire?
4
Inserisci i 4 valori
2
4
6
8
La somma dei 4 valori è 14
Perchè somma solo gli ultimi due?
Se al posto di som=v[i]+v[i-1]; uso som=v[i]+v[i-n];, somma tutti tranne 
l'ultimo
Grazie a chi risponderà
------------
int main()
{
int v[20],n,i,som;
cout<<"Quanti valori vuoi inserire? \n";
cin>>n;
cout<<"Inserisci i "<<n<<" valori \n";
for (i=0;i<n;i++)
{
cin>>v[i];
}
som=0;
for (i=0;i<n;i++)
{
som=v[i]+v[i-1];
}
cout<<"La somma dei "<<n<<" valori è "<<som<<"\n";
}
-- 
Flavio
www.flapane.com

 }
Devi fare
	som += v[i];
che equivale a
	som = som + v[i];
ciò che fai te è mettere in som il valore i-esimo con il valore i-esimo-1,  
quindi il risultato è sempre gli ultimi due indici di v.
Tra l'altro, con i che vale zero i-1 il valore di som è impredicibile.
-- 
Dr. Atlantis

 
Verissimo, era una cosa fessa che era sotto gli occhi :)
Grazie
-- 
Flavio
www.flapane.com

e' un errore logico e banale...
nel secondo for, dove effettui la somma scrivi
som=v[i]+v[i-1];
che significa, all'ultima iterazione, som=v[3]+[2], che sono 
rispettivamente ultimo e penultimo elemento dell'array...
devi scrivere:
som=som+v[i];
Flapane (Fastfla) ha scritto:


Flapane (Fastfla) ha scritto:

e consiglio di stile...
som=0;
mettilo subito appena dichiari la variabile!
finche' son poche righe non ti cambia nulla...
ma su grossi progetti la leggibilità e' fondamentale, non tanto per te, 
ma magari per eventuali collaboratori.
Meglio notare subito e prendere l'abitudine!

 Meglio notare subito e prendere l'abitudine!
Questa è una cosa che non sapevo, in effetti è più chiaro, grazie.
-- 
Flavio
www.flapane.com

ma magari per eventuali collaboratori.
Io tutta sta gente che lavora sui "grossi progetti" devo ancora
conoscerla :-)
Comunque, un consiglio utile in generale è quello di dichiarare la
variabile nel punto più vicino a dove viene utilizzata. Quindi
dichiarare som poco prima del suo utilizzo.

 
Vedo che col prodotto non accade la stessa cosa, a rigor di logica non 
dovrebbe funzionare?
for (i=0;i<n;i++)
{
prod=prod*v[i];
}
-- 
Flavio
www.flapane.com

 conoscerla :-)
Vero ... però anche io trovo la leggibilità ... ed i commenti .. anche
per me stesso molto importanti ... ma forse sono io che poi quando mi
trovo a toccare le cose soffro di alzheimer :)

per me stesso molto importanti ...
Ovvio che sì. Non mi verrebbe mai in mente di negare l'importanza
della leggibilità e dei commenti. E' solo che - senza alcuna
cattiveria - mi fa sorridere chi parla dei "grandi progetti", perché
il 90% della gente non ne ha mai visto uno :-)
Newsgroup: it.comp.lang.c++
Titolo: Visual C++ 6.0 e Win NT

In collaborazione con altre persone ho sviluppato un applicativo in
Visual C++ 6.0, per le piattaforme Win 95 e Win 98. L'applicativo è
stato sviluppato su Win 2000. Su tutte e tre queste piattaforme
l'applicativo gira regolarmente da oltre 1 anno. Ora si ha la
necessità di installarlo anche su Win NT, ma su questa piattaforma,
alla partenza dell'applicativo si riceve il seguente messaggio di
errore:
"Impossibile trovare il punto di ingresso Process32Next della
procedura nella libreria a collegamento dinamico Kernel32.dll."
Potete aiutarmi ?

No, non possiamo aiutarti
Process32Next è una API presente su: w9x, me, winxp e win2k ... a quanto
pare si so scordati proprio di windows nt...
cmq fa parte delle tool help library .. però non so se fanno parte di nt

pardon, sono OT pure io


DA MSDN :
Requires Windows 2000 or later.

...


OT OT OT OT OT OT OT OT OT

L'unico modo che mi viene in mente è quello di prendere la DLL da win2000 ad
esempio e copiarla sul sistema di winnt sotto system32
se e solo se quella DLL non ha altre dipendenze e sperando che quella DLL
non sia addirittura dannosa per un sistema NT.
Altro sistema è quello di vedere le funzioni che utilizzavi e i punti nel
tuo codice dove richiamavi una qualche funzione di questa DLL e trovare
qualche altro componente che faccia le stesse cose o addirittura se hai una
conoscenza strabiliante del sistema operativo, farti te una DLL che faccia
el cose che ti servono.
Non credo che ci siano altre possibilità visto che da M$ ti dicono che
quelle API non ci sono in NT.
Ciao

<cut/>
L'api indicata è kernel32.dll, quindi se lo deve proprio scordare..
Credo comunque che in windows NT esiste qualcosa di diverso.. l'enumerazione
dei processi è di 2k... e poi con toolhelp32 è stata aggiunta a 9x ...
Forse in MSDN troverà qualche riferimento su una eventuale API x NT (o
magari direttamente nella doc di nt guardando tra le api dedicate ai
processi)

 gira già su Win 95 Win 98 e Win 2000)
scrivimi. Vedrò se posso farti una ToolHelp32 per Windows NT 4 in tempi 
accettabili
-- 
  < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
      Don't stand, REACT!      version 0.1.3. C, C++ and ASM developers
                               and beta testers are welcome!

Forse in MSDN troverà qualche riferimento su una eventuale API x NT 
Sotto NT, le API usate per enumerare i processi sono le PSAPI.

Newsgroup: it.comp.lang.c++
Titolo: OT: MI5 Persecution

Questo MI5 Persecution comincia a rompere o è solo una mia
impressione?
ciao.

 impressione?
Non e' solo una tua impressione. Per favore, scrivete tutti al vostro
provider perche' intervenga.
Ciao,
Nicola
Newsgroup: it.comp.lang.c++
Titolo: Tutorial su C++ Builder

Salve
sono un programmatore in VB e vorrei iniziare ad usare il C++ Builder di cui
ho la versione 3.0
Vorrei gentilmente qualche consiglio sul mio compilatore, se va bene o devo
procurarmi qualcosa di diverso e dove potrei trovare qualche tutorial per il
c++ in italiano?
Grazie
Vincenzo



www.programmazione.it
www.manuali.net
Che esigenze precise hai ?
Ciao
Gaetano.
-- 
Posted from 
dell-01.mm.eutelsat.org
 [194.214.173.17] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.lang.c++
Titolo: librerie - richiesta aiuto

 
         Dove posso trovare informazioni riguardo le librerie standard per c++?
In particolare vorrei una guida di riferimento con la lista completa di
tutte le funzioni e una breve descrizione.
grazie.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Vedi se questo link ti può essere utile.
http://www.cplusplus.com/ref/
 

 grazie.
Prego
-- 
Gerolamo

Newsgroup: it.comp.lang.c++
Titolo: C'e' un modo piu' elegante di farlo?

Ho un gestore di eventi temporizzati che ha bisogno di chiamare diversi 
metodi di diverse classi senza nulla in comune, per realizzarlo uso una 
base fittizia e un metodo fittizio che chiamano in realta' i metodi 
reali. Funziona, ma non e` bellissimo da vedere... ecco il codice d'esempio.
#include <list>
#include <iostream>
class T1
{
public:
     void Pippo() { std::cout << "Funziona T1!\n"; }
};
class T2
{
public:
     void Pluto() { std::cout << "Funziona T2!\n"; }
};
class FakeClass;
typedef void (FakeClass::*SimpleCbk)();
struct EventData
{
	FakeClass *classbase;
	SimpleCbk func;
};
typedef std::list<EventData> EventList;
int main()
{
     EventList ev; T1 t1; T2 t2;
     EventData d1 = {(FakeClass *)&t1, (SimpleCbk) &T1::Pippo};
     EventData d2 = {(FakeClass *)&t2, (SimpleCbk) &T2::Pluto};
     ev.push_back(d1);
     ev.push_back(d2);
     for (EventList::iterator it = ev.begin(); it != ev.end(); ++it) {
         FakeClass *base = it->classbase;
         SimpleCbk cbk = it->func;
         (base->*cbk)();
     }
     return 0;
}

 }
Secondo me la tua soluzione e' decisamente fragile e potrebbe rompersi
usando classi basi multiple, eredita' virtuale, ecc.
Al tuo posto valuterei l'uso di Boost.Function e Boost.Bind, se non
addirittura Boost.Signal: 
http://boost.org
Ciao,
Nicola

 }
Anche: s'è possibile, facci eritare T1 e T2 direttamente di
AbstractEventCallback, con un'implementazione di notify(). E
registra con "ev.push_back( &t1 )" direttamente.
--
James Kanze (GABI Software)             
email:james...@gmail.com
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

 registra con "ev.push_back( &t1 )" direttamente.
Questo non mi e' possibile farlo perche' la classe Tx potrebbe avere i 
metodi m1.. mN che possono essere chiamati dal gestore di eventi.
Ciao,
  Gabry

 contesto non possano avere basi multiple.
Perche non? Che problema di basi multiple?

Newsgroup: it.comp.lang.c++
Titolo: Problemi patch Borland C++ 5.0

Niente da fare, non riesco ad applicare le patch, sembra che patch.exe
trovi dei file diversi da quelli che si aspetta, eppure la mia č una
normalissima versione 5.0!
Boh, rimane valido l'appello, se qualcuno č cosě gentile da prestarmi
la versione 5.02 uscita in edicola qualche mese fa per qualche giorno
(zona Milano/Bergamo/Como)...
Grazie, giulio
Per favore togliete "!RemoveMe!" dall'indirizzo per rispondere
Please remove "!RemoveMe!" from the address to reply

(zona Milano/Bergamo/Como)...
Un po' difficile da inviare per email.....
Bye.

Un po' difficile da inviare per email.....
Infatti, passerei io a prenderlo e riportarlo brum brum nel giro di
qualche giorno :-)


Puoi sempre tener d'occhio qualche rivista o chiedere l'arretrato di
Computer Magazine (L. 18000) con Borland C++ Suite 5.02 e Borland C++
Builder 1.0...
--
Diego "1985" Pettenò
per gli spammer la mail è
diego...@hotmail.com
ATTENZIONE: rispondo ai messaggi di pubblicità indesiderata
su TiscaliNet con un bel messaggio al provider di competenza!
per i messaggi seri è
diego....@tiscalinet.it
Newsgroup: it.comp.lang.c++
Titolo: Ritornare oggetti

Ritorno oggetti. 
Non riesco a capire il ritorno di oggetti
Se una funzione 
Point foo(void);
io la uso cosi' 
Point u;
u = foo()
u e' un oggetto di tipo Point ma la funzione come puo' passarmi l'oggetto?
Cioe' non riesco a capire come e' creato il Point da foo e come questo
possa essere ancora visibile al di fuori di foo. (il = fa una copia?)
se la funzione invece restituisce un Point& foo() cosa cambia?
(dentro foo ci deve essere una new?)
se invece ritorna Point* foo() ?
grazie ma proprio non capisco il meccanismo del passaggio 
mi potete dare qualche link?
grazie mille

 potete dare qualche link?
C'è un libro completo: "Inside the C++ Object Model", di Stanley
Lippman.
--
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

 mi potete dare qualche link?
Normalmente i manuali coprono abbondantemente tutti questi argomenti. 
Max

 Sě, viene effettuata una copia.
Correggo, perché non avevo letto bene il tuo testo. Non č l'assegnamento che
genera una copia, ma proprio l'operazione di restituzione per valore.
Max

 programmatore.
Qui la new c'e' per forza dentro foo no?
grazie

 grazie mille
Anche io sto imparando per cui non prendere per oro colato quanto segue, 
ritengo che un punto di vista potrebbe essere  il seguente:
= visto come operatore overlodato.
Ovvero la classe Point a cui l'oggetto appartiene prevede un operatore 
overlodato = che fa la copia.
Non so se ne crea uno in automatico che funiona nella magigor parte dei 
casi con interi stringhe e altri tipi semplici..certo e' che se dentro 
point hai delle strutture dinamiche devi implementare l'operatore = con 
cura.
Spero di averci azzeccato.. EHI gente ,ci sono andato vicino ;-) ???

 al momento del passaggio? 
Al momento in cui viene restituito.
Max

 Qui la new c'e' per forza dentro foo no?
Speriamo. Quando lavora con puntatori, bisogna sempre
spezificare a chi appartengono, e a chi la risponsibilità di
fare il delete. Almeno che, com'io, usi il garbage collection.


Newsgroup: it.comp.lang.c++
Titolo: Dev C++ non si comporta con Visual c++

Salve, uso DialogBox() con Visual C++ e funziona correttamente, lo
stesso codice e lo stesso file di risorse compilato con dev c++ non
carica la risorsa dialog.. in modo probabile manca qualcosa... c'e'
qualche libreria da caricare? o altro?

 ha scritto nel messaggio
news:19afd0ff.04042...@posting.google.com...

Newsgroup: it.comp.lang.c++
Titolo: C#

Sembra il linguaggio del momento.
Cos'ha in piu del classico C++ ?

 ha scritto nel messaggio
news:0ppcgv0km7deiq0up...@4ax.com...


 Cos'ha in piu del classico C++ ?
è praticamente un c++ senza puntatori e con
un sacco di API integrate.
una specie di java copiato e potenziato insomma.
-- 
Licantrop0 / HackZ XtremE Crew since 2001
Mail: 
licantrop0-at-libero.it
Http1: 
www.hackzxtreme.cjb.net
Http2: 
www.tandycenturyfox.com

 Cos'ha in piu del classico C++ ?
Ti passo solo le mie prime impressioni: è un linguaggio che offre meno
flessibilità rispetto al C (niente puntatori, gestione intergrata della
memoria dinamica, etc..) e quindi si espone meno ad errori. E' interessante
per produrre S/W a maggiore affidabilità, riducendo la posssibilità di
errori nascosti.
Spero di poterti dire di più in seguito.
Ciao!
Fab


Nonostante il nome non ha quasi niente a che fare con il C++ o il  C, non e'
una estensione del C++ come il C++ lo era del C.
E' invece concettualmente molto piu' simile a Java.

 niente... č solo un'illusione.
qualche cosa in piu' c'e' e pure qualche cosa in meno e... pure qualche cosa
di diverso etc... Cosa vuole dire "niente" ?!?
Tommy

Newsgroup: it.comp.lang.c++
Titolo: che significa?

all'inizio prima di aprire DEV appare il seguente messaggio :
There doesn't seem to be GNU Make file in PATH or in 
Dev-C++'s Bin path.Please make sure that you have 
GNU Make and adjust Bin setting or system PATH 
enviroment variable and that make setting in 
Compiler Option contains correct filename,otherwise 
you will not be able to compile anything.
piu o meno penso di averlo capito una mano sarebbe gradita grazie

Non trova il percorso per il make. Se non lo trova non riesce a
compilare.
Guarda se hai /usr/bin/make.

 ha scritto nel messaggio 
news:5ce7cc5c-0153-4016...@z66g2000hsc.googlegroups.com...

Newsgroup: it.comp.lang.c++
Titolo: Compilo il mio primo programma e...

 
Ciao a tutti.
Scusate la domanda: ho compilato il mio primo programma in c++ con il
compilatore Dev-c++ 4.
Il programma è quello che ha compilato la prima volta la maggior parte
di voi e che anch'io ho compilato per primo in C con Djgpp quando ho
dovuto confrontarmi con i rudimenti du questo linguaggio:
#include <iostream.h>
int main()
 {
 cout << "Hello World\n";
 return 0;
 }
Ora, qualcuno mi sa spiegare perchè dopo una compilazione senza errori
quando cerco di lanciare l'eseguibile, la finestra DOS che dovrebbe
fare apparire il testo "Hello World" si apre e si chiude
immediatamente?
Evidentemente il programma viene eseguito correttamente, ma non sono
io a chiudere quella finestra.
Compilando test del genere in C mi capitava che la finestra DOS in
questione, a fine esecuzione del programma, mostrasse nella tile-bar
"Esecuzione terminata".
Dove sbaglio?
Spero di essere stato chiaro ed auguro buon lavoro a tutti ;-))
Fabio

La finestra del DOS si chiude sola al termine
del programma.
Prova cosě:
#include <iostream.h>
#include <stdio.h>
int main()
 {
 cout << "Hello World\n";
 getchar();
 return 0;
}
o cosě:
 #include <iostream.h>
#include <stdlib.h>
int main()
 {
 cout << "Hello World\n";
 system("pause");
 return 0;
 }
Ciao.

 io a chiudere quella finestra.
Esattamente... Puoi:
1) inserire un'istruzione nel codice che mette una pausa nell'esecuzione
   del programma (io metterei system(pause); con il C, non so se funziona
   anche con il C++).
2) Indicare a DevC di fare una pausa quando esegui il programma (mi sembra
   ci sia un'opzione nei menu, trovala).
3) Eseguire il programmino dal prompt del DOS (c'e' in tutti i Windows).
Ciao,
Valerio.

 ha scritto nel messaggio
news:3cf40fc...@powernews.libero.it...


del programma.
Strano! Lo stesso programma compilato in C (con le opportune
differenze di sintassi) non ha questo comportamento; semplicemente il
flusso del programma giunge alla fine. La tile-bar cambia e avvisa,
giustamente, ... "Esecuzione terminata".
Mi pare un comportamento molto più coerente.
La cosa che mi secca di più è che il tutorial che sto leggendo mi fa
compilare il codice C++ di cui sopra senza le 'migliorie' che avete
suggerito di applicare (e che, a modo loro, raggiungono entrambe lo
scopo di farmi vedere il programma senza che la finestra-flash si
debba chiudere appena ultimata l'esecuzione del codice).
Come se non bastasse, il secondo esempio che il tutorial in questione
mi fa compilare ottiene due errori di compilazione che, tra l'altro,
non sono in grado di individuare (ad occhio e croce il codice è a
posto!)
#include <iostream.h>  // Oppure senza .h come vorrebbe Maurizio ;-))
 int main()
 {
 int x = 5;
 int y = 7;
 cout "\n";
 cout << x + y << " " << x * y;
 cout "\n";
return 0;
 }
Che faccio?
Cambio tutorial, cambio compilatore o cambio la mia vita ed inizio a
bere?
Un saluto con simpatia a tutta la comunità
Fabio ;-)

 Fabio ;-)
--
ciao,
Cecco
---------
Visit: 
www.sourceforge.net/projects/dlab
Home Page: 
http://dlab.sourceforge.net/
Dlab-developer mailing list
https://lists.sourceforge.net/lists/listinfo/dlab-developer
Newsgroup: it.comp.lang.c++
Titolo: aiutino :)

Ciao a tutti..
Dovrei scrivere 1 programmino che metta in 1 array le prime 10 potenze 10 di
2..
qualcuno sarebbe cosě gentile da darmi qualche suggerimento? ^^ Visto che č
per 1 mio amico e mi ha chiesto di aiutarlo.. E nn sono capace di prog in
c++ :))
thx
bye
Micko

 2..
alla faccia del programmino: (di solito non faccio i compiti
agli altri, ma se ha dei problemi di questo tipo fossi in lui mi
preoccuperei.)
le prime 10 potenze (cioe' dalla 0 alla 9)
int B[10];
B[0]=1;
for (int i=1; i<10; i++) B[i]=10*B[i-1];
oppure
int B[10]={1,2,4,8,16,32,64,128,256,512};
ciao,
g.

 for (int i=1; i<10; i++) B[i]=10*B[i-1];
Ahemm... queste sono le prime potenze di 10,
volevo dire
for (int i=1; i<10; i++) B[i]=2*B[i-1];


 E nn sono capace di prog in c++ :))
Ah... quindi il tuo amico fa scrivere il programma a te che non sei
capace. 
Siete proprio una bella coppia.

 Siete proprio una bella coppia.
LOL

 Siete proprio una bella coppia.
ROTFL



Magari è un amico marziano che viene da chissà quale galassia sperduta
perchè avrebbe dovuto rifiutarsi? come siete cattivi :PPPP auuaua

Newsgroup: it.comp.lang.c++
Titolo: libro per c

Salve sono un newbie e vorrei passare dal pascal (nozioni da superiori e
stop) al c. Dopo numerose ricerche in internet ho trovato sempre le solite
guide che non mi piacciono. Sapreste indicarmi almeno due titoli di libri
che parlino di c per principianti (magari tralasciate il "dummie").
ringrazio anticipatamente



C++: The Complete Reference, 4th Edition
by Herbert Schildt
ciao,
Major

 ha scritto nel messaggio
news:rpBbc.10338$hc5.4...@news3.tin.it...


grazie per i consigli, ma il libro è per c o per c++? o sono la stessa cosa?
rigrazie

 grazie per i consigli, ma il libro è per c o per c++? o sono la stessa
cosa?
Allora:
1- il C e il C++ sono due linguaggi DIVERSI, anche se hanno una discreta
parte in comune
2- sono in COMPLETO disaccordo sul consiglio che ti hanno dato.
Non tanto per il libro (che non conosco), quanto per l'autore, che ha fama
di scrivere molto bene (nella forma) e molto sbagliato (nella sostanza).
Molto meglio il libro di Lippman, che trovi anche in italiano:
http://www.accu.informika.ru/cgi-bin/accu/rvout.cgi?from=0au_l&file=cp001633a
Se cercavi per il C, invece, chiedi su it.comp.lang.c
-- 
Gerolamo
Newsgroup: it.comp.lang.c++
Titolo: [OT] (Ma doveroso) Grazie Max M., grazie Ghenio.

Grazie Max M.
Grazie Ghenio.
Grazie ad i vostri consigli, sono riuscito ad ottenere ciò
che volevo, ed ho imparato una cosa nuova (che non è
poco).
Riguardo alla ingegnerizzazione del software ... beh, si, avrei potuto
ad esempio passare al metodo i valori con cui mi serve venga
inizializzato di volta in volta il membro, quindi indicizzare sui valori
anzichè sui puntatori a classi.
Sarebbe stato più facile e più vicino ad un tipo di programmazione
non object oriented (dove sono un po' più ferrato).
Il fatto è che il requisito di avere una classe per ogni "automa", anche
se i vari automi sono praticamente identici, mi è stato dato come
inamovibile
e non raggirabile. Cmq così il software sarà più leggibile.
Beh, che dirvi se non di nuovo grazie molte.
Ciao
Alla prossima.
Max



Newsgroup: it.comp.lang.c++
Titolo: dubbio sulle funzioni virtuali

un dubbio :
#include <iostream>
using namespace std;
class Base {
public:
        void f() { cout << "Base::f()\n"; }
        virtual void g() { cout << "Base::g()\n"; this->f(); }
};
class Derived : public Base {
public:
        void f() { cout << "Derived::f()\n"; }
        void g() { cout << "Derived::g()\n"; this->f(); }
};
int main() {
  Base* bp = new Derived;
  bp->g();
  return 0;
}
come output mi dà (c++ builder 4) :
Derived::g()
Derived::f()
quello che non capisco è perchè mi dia Deriver::f() invece che Base::f()
this->f(), dal momento che this è un puntatore alla classe base, e che f()
non è virtuale, dovrebbe scegliere la versione di f() presente nella classe
base, non quella derivata.
cosa non ho capito questa volta ?
grazie
Franz

> cosa non ho capito questa volta ?
Forse il significato di funzione virtuale.
Una funzione virtuale è una funzione membro di una classe che deve essere
ridefinita nelle classi derivate. Cio' significa che se tu richiami una
funzione membro virtuale utilizzando il puntatore alla classe base verra'
comunque richiamata l'implementazione della classe derivata.
Es.
class base {
    int metodo1 ();
    virtual int metodo2 ();
};
class derivata : public base {
    int metodo1();
    int metodo2();
}
main ()
{
    derivata ClasseDerivata;
    base * ClasseBase = &ClasseDerivata;    //Recuperi il puntatore alla
classe base
    ClasseDerivata.metodo1();        //Viene richiamato il metodo1 della
classe derivata
    ClasseDerivata.metodo2();        //Viene richiamato il metodo2 della
classe derivata
    ClasseBase->metodo1();           //Viene richiamato il metodo1 della
classe base
    ClasseBase->metodo2();           //Viene richiamato il metodo2 della
classe derivata
}
In altre parole con la keyword virtual ti assicuri che comunque tutte le
classi derivate vedranno sempre l'ultima implementazione che hai definito
per un particolare membro.

 this->f(), dal momento che this č un puntatore alla classe base,
No, this č di tipo Derived e quindi il compilatore non puņ far altro che
chiamare il metodo Derived::f().
EMG
Newsgroup: it.comp.lang.c++
Titolo: studenti in cerca di aiuto

salve, siamo due studenti di ing elettronica a cui è stato assegnato
un compito:costruire una strumento software che date delle equazioni e
dei parametri in ingresso dia dei grafici in uscita.Il tutto on-line.
Qualcuno ha idea di come si possa fare o se già esiste qualcosa di
simile?Nadia e Paolo

 Qualcuno ha idea di come si possa fare...?
Vi è stato assegnato un compito da un vostro professore e non avete 
neanche l'idea da dove si parta????
Mi sembra strano...
-- 
Luc.

Newsgroup: it.comp.lang.c++
Titolo: [OT] OCX: testare un controllo

Scusate il post ... magari è il posto meno adatto ma non saprei dove
farlo.
Dunque ho realizzato un ocx, voglio venderlo su componentsource,
e loro sono disposti a prenderlo, tuttavia devo, prima del rilascio
ufficiale fare gli ultimi test. La cosa comporta un minimo impegno.
Si tratta di un componente per la valuta totlamente indipendente
dalle impostazioni regionali del computer.
Ho intenzione di trovare 5 tester a cui a fine prove darò la versione
integrale del controllo registrata a loro nome.
Penso di venderla a 55-75 euro ... se a qualcuno interessa fatemelo
sapere.
-- 
Saluti
Andrea Moro

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
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Newsgroup: it.comp.lang.c++
Titolo: CONTROLLARE MOUSE

come posso controllare un muose da dos con programmi scritti
in c o c++  (uso il turbo c++ 3.0 dos)
rispondete
 
uc...@tin.it

 wrote in message
news:7bpg3f$f7c$1...@nslave1.tin.it...


Newsgroup: it.comp.lang.c++
Titolo: Input di password

Sto sviluppando un programma C++ con SQL immerso per lavorare su DB2.
All'avvio del programma mi viene richiesto user-id e password per la
connessione al database. L'interfaccia è DOS. E' possibile mascherare i
caratteri digitati nel campo password? (
p.es
. sostituendoli con asterischi,
come avviene normalmente in windows)

 ha scritto nel messaggio
news:PW4j8.54907$_u5.1...@news1.tin.it...

Ecco un metodo non standard e forse non portabile:
#include <conio.h>
char passwd[8+1]; //8 caratteri + il terminatore nullo
//...
for(char *p=passwd, char t; p < passwd+9 && ((t=getch()) != '\n'); ++p){
        *p=t;
        putch('*');
}
//...
Saluti.


Grazie. Alla fine ho usato un altro metodo ma il tuo codice ne è stato il
punto di partenza.
Newsgroup: it.comp.lang.c++
Titolo: handle e nome processo....

Salve a tutti...quali sono le chiamate o funzioni per ottenre il nome
del proprio processo e handle?
Grazie a tutti

 del proprio processo e handle?
Non vedo l'attinenza con l'argomento di questo newsgroup. Ad ogni modo, se 
-come immagino- ti interessano le API di Win32, ti suggerisco prima di 
tutto di cercare su MSDN.
Max

 
Nella funzione:
int main(int argc, char ** argv)
il primo elemento (o forse sarebbe meglio dire lo zeresimo)
è una stringa c (puntatore a caratteri in cui '\0' è usato come terminatore)
che contiene il nome con cui il processo è stato eseguito
(però non so se questa cosa è standard o semplicemente valida in molti casi)
Per quanto riguarda l'handle che penso sia un identificatore univoco del
processo nell'ambito di tutti i processi eseguiti simultaneamente da un
sistema operativo, penso che per ora non ci sia ancora nulla di standard,
e quindi è meglio che guardi nella documentazione specifica del sistema
operativo che stai utilizzando.