mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: piccole regole per scrivere una buona classe

Salve ragazzi chi di voi mi puo dare una mano: mi servirebbero delle piccole
regole per scrivere una buona classe
__________________________________________________________________ siddharta
ICQ#: 173325742 Current ICQ status: + More ways to contact me
__________________________________________________________________

 piccole regole per scrivere una buona classe
Non esistono delle regole, devi esaminare classe per classe e progetto per
progetto. Dovresti leggere qualche libro di progettazione. Io ho letto il
libro di Carlo Pescio, "C++ manuale di stile", che tra le altre cose mi
sembra parli anche di come scrivere buone classi.
-- 
Andrea Bergia - studente          Linux Registred User #281550
Per favore non mandatemi allegati in Word o PowerPoint.
Si veda 
http://www.fsf.org/philosophy/no-word-attachments.html

 sembra parli anche di come scrivere buone classi.
Un altro ottimo riferimento in proposito sono "Effective C++" e "More
Effective C++" di Scott Meyers.
Ciao,
Nicola
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG


Anche i 2 libri di Herb Sutter "Exceptional C++" e "More Exceptional C++"
parlano in qualche capitolo dei modi di scrivere buone classi e di errori
comuni che vengono fatti.
Maurus

 errori comuni che vengono fatti.
a proposito di "More Exceptional C++", chi di voi lo ha letto?
Io l'ho finito giusto ieri sera ma devo ammettere che sono rimasto un po' 
deluso: il libro in se e` sicuramente ben fatto ma IMHO non regge 
minimamente il confronto con il predecessore, sicuramente piu` 
approfondito; per rendersene conto basta guardare i livelli di 
difficolta` dei vari item: moltissimi erano inferiori al 5, segno che 
non si trattava di argomenti molto approfonditi.
La mia impressione e` di un libro uscito un po' forzatamente per 
questioni editoriali; voi ce ne pensate?
ciao Anto
-- 
"Computer science is not about computers any more than astronomy
is about telescopes." -- EW Dijkstra

 ciao Anto
Ciao Antonio,
guardando nella mia piccola libreria fisica (ne ho anche una elettronica con
un bel numero di e-books ma sono scomodi daleggere purtroppo), mi sono
accorto di possedere solo il primo ed in francese "Mieux programmer en C++"
di Sutter. Il secondo l'ho sfogliato in libreria e non lo comprai perche'
preferii prendere "Effective STL" di Meyer.
In effetti devo ammettere che preferisco lo stile di Meyer (o Meyers? non
ricordo) che e' piu' "effettivo"!
Se facesse uscire un libro sulle MFC lo comprerei subito, perche' non ho
ancora trovato un libro veramente scritto bene su questo argomento e penso
che lui ci riuscirebbe.
Maurus

 che lui ci riuscirebbe.
Nemmeno "Programming Windows with MFC" di Prosise? Dicono che sia equivalente al Petzold sulle MFC.
Ciao,
Cecco
Newsgroup: it.comp.lang.c++
Titolo: differenza C C++ e ambienti Rad

tra c e c++ ho capito č preferibile il c++ ma sempre? 
e rispetto a C# cosa cambia?
Inoltre che differenze principali ci sono tra i rad
Turbo C++, Borland Studio6 C++, Visual Studio .NET, Visual C++
e con tutti si riescono a fare applicazioni che girano
si con win XP, con Linux e il winodows Vista ?
Inoltre differenze tra delphi e C++
e se in effetti č molto piů semplice decompilare un delphi rispetto a
un C.

 un C.
Ma che cavolo stai dicendo???
Insomma... invece che fare domande a raffica perchč non
cominci a leggerti qualcosa sulla programmazione e sui vari
linguaggi che citi?
Ma soprattutto DEVI contestualizzare:
es. "Devo trasferirmi in Argentina. E' piů utile imparare il
francese o lo spagnolo?"
Infine: sei decisamente OT.
Chiedi su it.comp.programmare
-- 
Gerolamo

Newsgroup: it.comp.lang.c++
Titolo: Argomenti non specificati

avendo una funzione
int prova (int x ...){
//...
}
ed una funzione main
int main(){
int y = 4;
prova (1, y);
return 0;
}
Come faccio per utilizzare in prova(int x ...) il valore di y passato da
main()?
Grazie anticipatamente

 Grazie anticipatamente
Di nulla.
Spero l'esempio sia chiaro...
--
Gerolamo

Newsgroup: it.comp.lang.c++
Titolo: Overloading di new[] and delete[]

Salve a tutti,
Il mio problema e' questo: devo fare il porting di una libreria nella quale
c'e' una classe che fa l'overloading di "new[]" e "delete[]" ma il mio
compilatore (MrCpp) non supporta tale overloading, benche' supporti
l'overloading di "new" a "delete".
Domanda: qual e' il modo migliore per aggirare l'ostacolo?
Se qualcuno ha qualche idea me lo faccia sapere.
Grazie
Stefano

 Domanda: qual e' il modo migliore per aggirare l'ostacolo?
Passare ad un compilatore migliore (what about DJGPP, if under DOS/WIN?). Un
compilatore che non supporta l'overloading di new e delete non č un
compilatore standard, ergo non č un compilatore valido.
Ciao
Domenico Barra

 Domanda: qual e' il modo migliore per aggirare l'ostacolo?
Mi era capitata una situazione simile tempo fa. in realta` il
compilatore utilizzava l'overload della new anche per new[]... quindi
bastava realizzare quello.
prova a vedere se anche il tuo utilizza new e delete anche per gli
array...
ciao ciao
andrea

č un compilatore standard, ergo non č un compilatore valido.
Il compilatore menzionato supporta overloading di new e delete ma
non delle versioni con array (new[] e delete[]).
Riguardo al tuo commento devo pero' dire che secondo me a oggi
l'insieme dei compilatori "standard" e' l'insieme vuoto (anche
se di compilatori che accettano overloading di new[] e delete[]
sicuramente ce ne sono molti).
Manca anche un test *ufficiale* da superare per essere considerato
un compilatore "standard" ... chi ha l'autorita' di affermare che
il compilatore X e' standard ? tutto quello che si puo' dire a oggi
che il compilatore X non e' standard relativamente alla feature Y.
Tieni anche presente che il fantomatico "standard" in alcuni punti
e' lacunoso (ambiguo) ed rappresenta qualcosa comunque in
continua evoluzione e correzione.
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff
Newsgroup: it.comp.lang.c++
Titolo: Tabelle e DbGrid...

Salve a tutti,
Sto creando un programmino che dato un form con 8 campi li inserisce in una
struttura e poi in un vettore di strutture... salvandolo poi su un
file...Avrei Bisogno però di inserire una tabella ,sto provando con DBGrid
(specifico che sto programmando mediante C++ Builder 6)... Solo che non
riesco a interfacciarla con il file contenente l vettore di strutture...
Vorrei sapere, se usare DBGrid è una buona scelta... e in tal caso se siete
a conoscenza di alcune risorse su tale argomento (la guida del BCB è fatta
malissimo a mio avviso) , oppure se mi potete dare qualche dritta...
Grazie Anicipatamente,
Alessandro

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

Salve a tutti,
volevo chiedere se esistevano delle funzioni che permettono di creare
le directory e stottodirectory nel sistema operativo dos.
questo senza usare la funzione system("mk cartella");
grazie a tutti
duido
-- 
Posted from  [62.98.94.109] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 le directory e stottodirectory nel sistema operativo dos.
Si, ma sono OS-Dependant. Chiedi sul NG relativo.
-- 
Luc.

Si, ma sono OS-Dependant. Chiedi sul NG relativo.
E io mi chiedo il perché, non si poteva aggiungere una funzione che fa
questo? In molti mi risponderanno che non č detto che in tutti i so ci
sono le directory, ma allora potrebbero non esserci neanche i file.
-- 
                    Marco Barisione (ICQ 84277092)
Se sei interessato alla creazione di un newsgroup generico in cui si
possa parlare di quei linguaggi di programmazione senza un gruppo
apposito vota per it.comp.lang su it.news.votazioni.

 le directory e stottodirectory nel sistema operativo dos.
"mkdir" e' standard POSIX; _potrebbe_ esserci anche sotto dos.  Non
hai un manuale della libreria del tuo compilatore?  Guarda li.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 "mkdir" e' standard POSIX; _potrebbe_ esserci anche sotto dos.
Forse, ma fare System ("mkdir ...") č bruttino non poco. E' meglio avere 
a disposizione ed usare l'API relativa.
-- 
Luc.

a disposizione ed usare l'API relativa.
???
Penso intendesse la funzione mkdir e non system("mkdir ...")


 Penso intendesse la funzione mkdir e non system("mkdir ...")
Ops, è vero. 8)
-- 
Luc.

Si mkdir() è una funzione C e la conosco come anche le sorelle
dell'header <dir.h>
cmq grazie a tutti per il dettaglio...
duido
-- 
Posted from  [62.98.95.183] 


 wrote in message
news:e4a8bfdfa3b0422eabe...@mygate.mailgate.org...


 sono le directory, ma allora potrebbero non esserci neanche i file.
Infatti anche il supporto ai file è facoltativo (almeno per una
reestanding implementation).
Ma la questione è un'altra. Il nome di un file (e il concetto di
directory) è completamente system dependent.
In altre parole esiste un modo per aprire uno stream per nome (anche
creandolo se non esiste). Se la directory è una forma speciale di stream
bene. Altrimenti creare una directory non è questione che riguardi il
linguaggio.
Varrebbe lo stesso per la creazione di una pipe o di una socket o altro.
Se la loro natura è intrinseca nell'identificatovo (una stringa) bene.
Altrimenti il problema non è nel linguaggio.
Puoi aprire un C++ un canale seriale? In DOS si. Chiamandolo "COM1:" e
trattandolo come un file. Ma la domanda è system dependent.
--
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556
Newsgroup: it.comp.lang.c++
Titolo: ho bisogno ancora di aiuto!

Ciao vi chiedo nuovamente un aiuto.
premettendo che tutte le variabili che compaiono sono gia state
inizializzzate in pecedenza nel tipo corretto e che lo spezzone di codice
che allego è dentro la funzione principale.
l' errore che mi ricorre nella fase di complilazione è il seguente: Error
..\..\PROGETTO\PROVA1.C 271: Constant expression required
do{
 switch(Esp_inp[i][0]){
  case (Esp_inp[i][0]>='m'||Esp_inp[i][0]<='z') :  // l'errore me lo da in
questa riga
   tipo='d';
  default:
   tipo='in';
 }
 }while(i<=n);
 if(tipo=='d')
 printf("Il tipo dell'espressione è Double");
 else
  printf("Il tipo dell'espresione è Int");
}


Questo errore ti dice che non puoi mettere nei case, delle condizioni o
espressioni booleane che normalmente si mettono negli if.
Nei case vanno messe espressioni costanti, per cui o usi degli if, oppure
assegni a delle costanti tutta l'espressione che hai nel case e poi valuti
la costante nei tuoi case.
Maurus

 ha scritto nel messaggio
news:b22ol5$17qkbd$1...@ID-125555.news.dfncis.de...



Cambia
switch(Esp_inp[i][0]){
  case (Esp_inp[i][0]>='m'||Esp_inp[i][0]<='z') :
con
if (Esp_inp[i][0]>='m'||Esp_inp[i][0]<='z')
e vedrai che ti funziona.
Oppure fai qualcosa del genere:
      const bool bEsp = (Esp_inp[i][0]>='m'||Esp_inp[i][0]<='z')
      switch (bEsp)
      {
      case TRUE:
         tipo ='d';
         break;
      default:
         break;
      }
Maurus

 Maurus
alla faccia della leggibilità...
if  (Esp_inp[i][0]>='m'||Esp_inp[i][0]<='z')
    tipo = 'd';
mi sembra un po' meglio.


Sono d'accordo,
gli ho messo anche l'eventualita' del case nel caso lui avesse bisogno di
fare tanti if in cascata per fargli capire che nell switch deve metterci
un'espressione costante.
Maurus
Newsgroup: it.comp.lang.c++
Titolo: richiesta di aiuto

Salve a tutti,
spero di non essere OT ma spero che qualcuno possa aiutarmi:
Ho il sistema operativo windowsME.
Il problema e' questo: tutto cio' che si serve di script per aprire le
finestre, non funziona piu'
Il problema e' nato subito dopo aver lanciato prima il programma jv16 ( un
tool che pulisce il registro) e
subito dopo il programma norton system works.
I problemi non sono stati riparati nemmeno dopo aver lanciato il backup del
registro di
jv16.
Esempio di errore:
provo a lanciare il Ripristino Configurazione del Sistema  ed esce una
finestra di errore intitolata:
ERRORE NELLO SCRIPT DI INTERNET EXPLORER
----------------------------------------------------------------------------
errore nello script della pagina
LINEA 14 CARATTERE 9
errore : PROPRIETA' O METODO NON SUPPORTATI DALL'OGGETTO
ULR RES: //RESTRUI.EXE/START HTM
continuare a eseguire gli script nella pagina si / no?
-se rispondo si mi appare la finestra di ripristino tutta in bianco
altro esempio di errore:
lanciando il norton antivirus mi appare una finestra che dice
ERRORE NELLO SCRIPT DI INTERNET EXPLORER
----------------------------------------------------------------------------
errore nello script della pagina
linea 56 carattere 2
errore: LIBRERIA NON REGISTRATA
ecc. ecc.
Inoltre non funziona piu' windows update, quando navigo non visualizza piu'
le finestre scritte in flash player,non funziona piu' lo start/guida in
linea.
sono demoralizzato. Non ho il disco di installazione di winME perche' il
venditore del PC a suo tempo non me l'ha fornito.Possiedo regolare licenza
d'uso.
Vi viene qualche idea di che cosa si sia sfasciato nel mio winME? e' grave o
magari manca solo qualche file?
Vi prego aiutatemi grazie
Franco.

 finestre, non funziona piu'
Dunque, vediamo un po'... dato che hai detto "spero di non essere OT", 
questo significa che avevi almeno una ragione per la quale pensavi che 
la domanda fosse pertinente a questo newsgroup, che parla dello standard 
C++... bene... e... qual'e' questa ragione, dato che io, onestamente, 
non la vedo? :/
-- 
/**
  * 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
  */

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

Scusate il probabile OT, ma qualcuno saprebbe indicarmi dove posso
trovare un tool gratuito per la costruzione di diagrammi UML?

 wrote in message
| Scusate il probabile OT, ma qualcuno saprebbe indicarmi dove posso
| trovare un tool gratuito per la costruzione di diagrammi UML?
Dia per linux, su 
http://www.SourceForge.net
Non genera codice (per ora)


Fossero tutti cosě gli OT !
Questo č un tool Java (ci sono anche i sorgenti) ma UML č sempre lo stesso (grazie alla U ;-)
ARGO
http://argouml.tigris.org/index.html
TaZ++
Newsgroup: it.comp.lang.c++
Titolo: string::npos

All'interno di una mia classe ho questo spezzone di codice:
int i;
std::string buff;
[...]
i = buff.find(term, 0);
if (i != std::string::npos)
[...]
Il g++ mi da questo warning sulla riga con l'if:
warning: comparison between signed and unsigned integer expressions
Nel suo  libro (secondo volume) Eckel  afferma che npos e`  una costante
che vale -1. In effetti quando la ricerca fallisce in i trovo proprio un
-1. Ravanando negli header del g++, pero`, ho trovato questo:
      // Data Members (public):
      // NB: This is an unsigned type, and thus represents the maximum
      // size that the allocator can hold.
      static const size_type    npos = static_cast<size_type>(-1);
Questa dichiarazione di npos in effetti giustifica il warning del g++.
Qualcuno potrebbe chiarirmi le idee?
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
Un apostolo vedendo Gesu` camminare sulle acque:
- Cazzo se e` buono 'sto fumo!!!

warning: comparison between signed and unsigned integer expressions
In effetti il messaggio é abbastanza chiaro, std::string::npos é una
costante unsigned e per evitare lo warning devi dichiarare la var. i
come unsigned, in funzionamento non é affatto compromesso.
La stessa cosa per l'uso della funzione membro size() di std::string e
std::vector che ritorna un valore unsigned, ed infatti se si vuole
scorrere questi container tramite indice occorre fare
for(unsigned int x=0;x<vet.size();x++)
    {
    /*........*/
    }
Il Ghenio
---------
// TODO: Place your ass here

 come unsigned, in funzionamento non é affatto compromesso.
Unsigned int, short, long --- unsigned cosa?
La dichiarazione esatta e' std::string::size_type i; .
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Dept. of Physics, Univ. of Padova, Italy          loreti at pd dot infn dot it

 i = buff.find(term, 0);
hai dichiarato "i" di tipo int, ma non e` detto che il metodo 
string::find restituisca un risultato di tipo int; a norma di standard 
la cosa piu` corretta da fare e` questa:
std::string buf;
std::string::size_type i = buff.find(term,0);
...
Su molte architetture il tipo std::string::size_type corrisponde a 
"unsigned int", ma non e` detto.
ciao Anto
-- 
Antonio Cuni, 19 anni, studente
Brainbench C++ Master: 4.73, higher than 99% of all previous test takers.
C Language: 3.79, higher than 92% of all previous test takers.
Guida C/C++ di Programmazione.it: 
http://cpp.programmazione.it

 std::string::size_type i = buff.find(term,0);
Supponevo, ero  pero` stato  fuorviato da Eckel  che negli  esempi usava
degli int. In  ogni caso lo standard  prevede che std::string::size_type
sia sempre un tipo unsigned?
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
La somma dell'intelligenza sulla terra e` una costante.
La popolazione e` in aumento.

 std::string::size_type sia sempre un tipo unsigned?
si. Lo standard specifica che il tipo size_type di 
basic_string<charT, charTraits, Allocator> sia lo stesso di 
Allocator::size_type.
Andando a vedere la sezione degli allocatori e` scritto esplicitamente 
che Allocato::size_type deve essere unsigned.

Newsgroup: it.comp.lang.c++
Titolo: Patterns

Conosco qualcosa do programmazione e progettazione ad 
oggetti (OMT) ma non conosco niente della progettazione con "patterns".
Qualcuno potrebbe spiegarmi semplicemente cosa sono questi patterns?
(ovviamente non voglio una spiegazione esaustiva, mi basta averne
un'idea)
Grazie mille
Matteo Della Torre

un'idea)
"pattern" si puo' tradurre approssimativamente con "schema".
Data una certa situazione (ad esempio, necessita' di comunicazione tra due 
oggetti) e un certo obiettivo (ad esempio, costruire la comunicazione in 
modo che sia facile variare il protocollo), un pattern ti da' uno schema di 
soluzione, identificando quali sono le astrazioni importanti, e quali sono 
le relazioni tra loro.
E' semplicemente uno schema di soluzione nota, che si sa avere certi 
vantaggi e svantaggi quando applicata ad una certa situazione.
Ci sono pattern ad ogni livello: dal design (si vuole che la struttura, o 
il comportamento di certi oggetti possieda certe proprieta'), 
all'architettura al deployment.
-- 
God is Real, unless declared Integer.
ObjectZone - 
http://space.tin.it/computer/csadun

 Qualcuno potrebbe spiegarmi semplicemente cosa sono questi patterns?
I patterns sono delle soluzioni a dei problemi ricorrenti a cui si è
arrivati nel tempo tramite molteplici esperienze.
Il vantaggio dei patterns è che sono delle soluzione astratte quindi
applicabile in qualsiasi campo.
Naturalmente esistono dei pattern che è difficile immaginarli al difuori
dal loro settore.
Si può dire che i patterns sono un eredita di esperienze altrui riassunte e
servite.
Yahya
--
"We (Allah) created not the heavens
and the earth and all that is
between them for a (mere) sport"
from the Quran
================================
Yahya El Mugrabi
Web Designer & Java Programmer
Tel: ++39 02 - 618 606 47
Fax: ++39 02 - 618 606 40
E-Mail:Yahy...@FlashNet.it
================================

Se ti interessa approfondire l'argomento ti consiglio di visitare
il sito di Ugo Landini, dove troverai un bel po' di roba a riguardo
(ed anche difficilotta).
http://www.ugolandini.net/
CIAO
Matteo

Newsgroup: it.comp.lang.c++
Titolo: Visualizzare un'immagine in VC++

Il problema consiste in questo:
ho un CDialog e su questo vorrei visualizzare un'immagine (da
qualche parte sul dialogo).
Questa immagine non e` su un file, ma mi arriva a "righe di BYTE"
da un processo esterno.
Quindi dovrei visualizzare l'immagine riga per riga.
Visto che non ho mai fatto niente di simile, c'e` qualche
anima pia che mi potrebbe scrivere qualche riga di esempio?
Mi sta bene anche MFC.
Grazie mille in anticipo.
Ciao.
Michele.

...

Newsgroup: it.comp.lang.c++
Titolo: Gestione coordinate dello schermo

Ciao a tutti. Qualcuno mi saprebbe spiegare come funziona la gestione dello
schermo in VC++? Ad esempio
-che differenza c'č in VC++ tra coordinate  logiche e coordinate fisiche?
-come si usano le funzioni pDC->GetWindowExt() e pDC->GetViewportExt()?
-Come relazionare le barre di scorrimento con il movimento della rotellina
del mose? (Tipo in Autocad)?
Grazie a tutti. Notte
Alessandro Moro

 ha scritto nel messaggio
news:zCR5b.292804$Ny5.9...@twister2.libero.it...

ti indirizzo in fw sul newsgroup giusto ... (it.comp.programmare.win32)
ciao
Newsgroup: it.comp.lang.c++
Titolo: Liste

Salve, non mi ricordo come si implementa una lista usando #include <list.h>


Temo di non aver capito...
La std::list è una implementazione di una lista con doppio concatenamento.
Il problema è semmai come si usa una std::list.
Manlio Perillo

Si, volevo dire quello che hai capito tu. Scusa, mi sono espresso male.
Di questi tempi sei quello che mi tira fuori dai guai?
Di cosa ti occupi?
Io sono studente.

#include <list>
#include <iostream>
using namespace std;	// non andrebbe usato, meglio specificare nome per
nome
int main()
{
  list<int> l;
  l.push_back(1);
  l.push_back(2);
  for ( list<int>::iterator i = l.begin(); i != l.end(); ++i )
    cout << *i << endl;
}
o qualcosa del genere.
Ciao,
Nicola

 wrote in message 8mufpu$cuh$1...@nslave1.tin.it...

Sono uno studente universitario in Fisica.
Manlio Perillo

Insomma, alla fine per "semplificarmi la vita" devo studiarmi come si usano
gli iterators, i containers e robe varie della libreria STL.... ma se
facessi una lista "alla vecchia maniera del C"... anche se mi è già stato
risposto che è preferibile con #include <list>.... non ne esco fuori ?
Se definisco e dichiaro una classe
class coda{
struct elemento_lista{
                            oggetto_definito_in_una_mia_classe  myobj;
                              struct elemento_lista*  next ;
                                }
public:
il costruttore;
metodi per accedere agli elementi della lista, tipo push, pop, etc. etc...
}
farei meno fatica, ma soprattutto corro il rischio di combinare meno guai o
no?
Io non sono molto pratico di template e di STL...
Grazie in anticipo per i consigli che mi darete
Sebastiano

Il mio esempio gia' ti indica come inserire un elemento in fondo alla
lista e come scorrerla; leggendoti la documentazione del tuo compilatore
o uno dei siti che documentano la libreria standard scopri come si fanno
le altre due o tre cose fondamentali; per usare i contenitori non e'
mica necessario impararsi tutta la libreria...
A me pare molto piu' semplice che riscriversi ogni volta tutto da soli,
infilando bachi qua e la.
Ciao,
Nicola
P.S. E ringrazia che Alex Martelli e' in vacanza, perche' lui ti
"martellerebbe" ben piu' forte di me :-)
Newsgroup: it.comp.lang.c++
Titolo: Problema con list.remove e dati con struct

Sono una principiante di C++
Ho il seguente problema che riepilogo con pezzi di codice 
**************************** Struttura: ******************
struct ContattoRubrica {
	char contatto[MAX_LEN_CONTATTO];
	char telefono[MAX_LEN_TELEFONO];
};
ContattoRubrica Rub;
list <ContattoRubrica> c1;
**********************************************************
**************************** Codice inserimento: ******************
    strcpy(Rub.contatto, nome);
    strcpy(Rub.telefono , numero);	
    c1.push_back(Rub);  
**********************************************************
**************************** Codice cancellazione: ******************
	bool b=c1.empty();
	if (b==false) {
		strcpy(Rub.contatto, nome);
		c1.remove(nome); ?????????? non funziona
                //c1.remove(Rub);  non funziona 
                //c1.remove(0);  non funziona  
		}
	else
		return;
Come faccio a rimuovere quell'oggetto della rubrica partendo dal campo
nome ?
Come si fa a sapere in che posizione si trova list ?
Grazie !
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Come si fa a sapere in che posizione si trova list ?
Con std::find:
    std::list< ContattoRubrica >::iterator i
            = std::find( c1.begin(), c1.end(), ContattoRubrica( nome,
"" ) ) ;
Sempre con l'operatore di == come ho dato.
Solo: mi domando se std::list convienne. Se vuol accedere
sequendo il contatto, penso forse que std::set (o std::multiset,
se vuol permettere duplicati) converrebbe più.
--
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: Cerco classe HTML per BCB

Ciao a tutti,
chi mi sa indicare dove scaricare una classe VCL per l'editing HTML
freeware per Borland C++ Builder?
Grazie.
Charlie.

La trovi, insieme a tante altre nei NetMenage's ActiveX : sono freeware e
utilizzabili con il Builder, ma anche con Delphi, VisualBasic o anche Visual
C++.
Trovi dei link nel sito della Borland.
SPARTACO
amu...@tin.it
http://www.pegacity.it/informatica/case/473/index.htm

Newsgroup: it.comp.lang.c++
Titolo: Identificatori in Assembler

Qualcuno può spiegarmi, o farmi sapere dove posso trovare, le regole di
manipolazione degli identificatori in c++, per poter poi fare delle
procedure in assembler!!!
Grazie

 ha scritto nel
messaggio news:iCGO9.52063$TC5.1...@twister1.libero.it...

dipende dallo specifico compilatore che usi (non c'è uno standard per la
manipolazione dei nomi)
Pela
Newsgroup: it.comp.lang.c++
Titolo: Dev-c++ & Completamento automatico

Ciao a tutti,
sto utilizzando Dev-c++ 4.9.9.2.
Ho già attivato  il completamento automatico:
Strumenti > Visualizzatore di classi > Completamento automatico > 
Abilita Completamento automatico.
Esiste una personalizzazione che renda dev-c++ simile al editor di vb. 
Quando scrivo il codice vorrei una finestra (ToolTipText) che mi aiuti a 
ricordare la sintassi per esempio se scrivo for vorrei che mi si 
visualizzasse un qualcosa di simile
for (Inizio,Condizione,Incrementi)
Non so se sono riuscito a farmi capire
Ciao e grazie
Lele

 Esiste una personalizzazione che renda dev-c++...
Non credo che esista una funzionalità come la vuoi te,,, al limite
potresti scaricarti i sorgenti del programma (sono in delphi) e
fartela da solo; o chiedere direttamente a chi lo sviluppa...
Comunque, ti consiglio di scaricarti e usare wx-devcpp; anche se non
vuoi utilizzare le wx-widgets, i ragazzi che la stanno sviluppando
hanno in pratica rivisto e corretto molte funzionalità "di base" del
dev.
Ciao

 dev.
Adesso lo provo e poi valuterò
Scusami per il ritardo....
Ciao
Lele

Newsgroup: it.comp.lang.c++
Titolo: Estensione del C++ in QT: signal e slot.

Salve a tutti.
Come fanno le librerie QT ad aggiungere le due parole chiave signal e slot?
Grazie per le risposte.

Andrea wrote:

a parte il fatto che sei OT, utilizzano dei #define in accoppiata con un 
programma che fa il parsing dei tuoi sorgenti e crea del codice 
aggiuntivo a seconda dei signal/slot definiti.
-- 
MSN: sirpsycho_78 -at- hotmail dot com

 
Beh è un'pò diverso...non sono define, ma parole chiavi.
Sono implementate nel loro compilatore che le riconosce come
tali!!
Ciao

AlterX ha scritto:

Ciao,
non ci ho mai pensato, ma probabilmente il modo migliore è guardare il 
sorgente prodotto dal MOC (quando ho usato io Qt c'era questo 
compilatore aggiuntivo che generava il codice C++ corretto).
Comunque Qt utilizza un "runtime" suo, inizializzato da QApplication, 
che sicuramente provvede ad implementarne il meccanismo
Prova a chiedere qui :
http://www.qtforum.org/
Forse ti possono dare la risposta che cerchi.
ciao,
Giulio

 compilatore aggiuntivo che generava il codice C++ corretto).
Mi pare che ci sia anche ora.
-- 
non vincono, non vinceranno, non hanno domani
la forza è nel puntello impugnato da oneste fortissime mani

Newsgroup: it.comp.lang.c++
Titolo: Aiuto ad un neofita

Ciao,
non sono esperto di C++, ma con l'aiuto dell MFC ho fatto una applicazione
OpenGL  mostrante un cubo che ruota sui suoi assi e si muove in 3 direzioni
(tipo lo screen saver Gemme3D di Windows).
Vorrei trasformarlo in uno Screen Saver č possibile???
E se sě come???
Grazie a tutti:)
Ciao <LuigI>

E se sì come???

Newsgroup: it.comp.lang.c++
Titolo: COME FACCIO A PROGRAMMARE GIOCHI CON IL C++ ?

VEDI IL TITOLO DEL MESSAGGIO

Vedi il titolo


+-----------------+
| Toro on the Net |
+ ^^^^^^^^^^^^^^^ +-----+
|   /===============\   | First website about
|-=> 
www.toroclub.it
 <=-| Torino Calcio
|   \===============/   | and its supporters !
+-----------------------+

Ciao,
    dipende dall'ambiente in cui lavori e dal tipo di gioco che vuoi
sviluppare.
Su Dev di parecchio tempo fa era uscita una serie di articoli sui giochi in
2D.
Per Windows 95 puoi usare le DirectX (trovi una breve introduzione ad esse
sul mio sito nell'area Tutorial). Oppure OpenGL che e' multipiattaforma,
oppure molti engine grafici commerciali.
A presto :-)
Marco Abis
http://welcome.to/C++Warriors
 sito interamente dedicato al C++
http://www.geocities.com/SiliconValley/Foothills/6336
  dedicato al C++
ab...@mv.itline.it
--
Automatic posted from root@[194.184.89.4]
via Mailgate Server - 
http://www.mailgate.org

Sai cosa ti dico????
Essenzialmente se fai domande di questo genere non hai la più pallida idea
di che cosa sia il C++!!!!
A questo punto usi il Visual Basic che è non dico 10, MA 100 volte + facile
da usare!!!!
-Primo passo: ti compri un MANUALONE che ti fa il 3° grado sul C++ e ti
diverti...
-Secondo passo: fare domande MOLTO MENO generiche... la prossima volta
magari ci chiederai di farti il gioco intero!!!
-Terzo passo: divertiti a programmare...
Sarò stato cattivo??? nooooooooooooo :-)))
magari x scusarmi ti faccio un corso accelerato....
Wave++
Wave_soft '98
wave...@iol.it
www.xoom.com/wave_soft
 (attualmente il sito è vuoto)!!!
Programmer and much more :-))))

Newsgroup: it.comp.lang.c++
Titolo: Timer???

Ciao a tutti...
chi mi dice come si può dichiarare ed utilizzare un Timer in una Unit che
non ha alcuna sezione published?
(Uso Borland Builder 4.0)
Max



Posta la domanda su it.comp.programmare.win32, perché qui siamo fuori
tema.
Il Ghenio
-----
Proteggeremo il mondo della devastazione!
Uniremo tutti i popoli nella nostra nazione!
Denunceremo i mali della verità e dell'amore,
Estenderemo il nostro potere fino alle stelle.
Jesse!
James!
Team Rocket pronto a partire alla velocità della luce.
Arrendetevi subito oppure preparatevi a combattere.
Miaaaoooo, proprio cosi'!
(Team Rocket)
-----
Newsgroup: it.comp.lang.c++
Titolo: codice equivalente

Ciao a tutti,
                 volevo sapere se qualcuno mi sa dire come scrivere in C++
il seguente codice
C:
int vecta[3];
int vectb[3];
swap(&vecta,&vectb);
dove 
void swap (int** v1, int** v2) {
int** temp
temp=v1;
*v1=*v2;
*v2=*temp;
}
Quella che desidero scrivere e` una procedura che mi scambi due vettori
senza
dover spostare per forza tutti gli elementi. In C si puo`, mentre in C++
(per la prezisione
il g++) mi da` degli errori di compilazione.
Chi mi sa rispondere? Ringrazio in anticipo tutti.

int vectb[3];
fai:
    int *vecta = new int[3];
    int *vectb = new int[3];
--
Byez.
Stefano Tempesta
temp...@tin.it
http://tempesta.freeweb.org
--------------------------------
(-: To "shut down" your system, type "WIN" :-)
(-: Windows VirusScan 1.0 - "Windows found: Remove it? (Y/N)" :-)

il g++) mi da` degli errori di compilazione.
E per fortuna, visto che il codice non e` funzionante.
Comunque: in C++, a differenza che in C, usando i vettori standard
C++, si puo`; esiste apposta il metodo swap.  Se hai un
compilatore C++ standard (g++ puo` esserlo o meno a
seconda dei release; l'attuale, 2.9 detto anche egcs, e
mi pare tutti quelli da 2.7.2 in avanti, sono standard quanto
basta per compilare questi esempi), fai #include <vector>
(e using std::vector; se il compilatore e` davvero standard,
ma in g++ 2.7 e 2.8 non occorre), poi:
vector<int> vecta(3);
vector<int> vetcb(3);
vecta.swap(vectb);
e hai risolto.  Invece, se vuoi usare quella caratteristica di
bassissimo livello che sono gli "array builtin", cioe` vuoi a
tutti i costi dichiarare "int vecta[3];" ecc, allora non c'e` nulla
da fare (non si puo` fare in C, quindi, se non altro a causa
della compatibilita`, non si puo` fare neppure in C++).
Alex
Newsgroup: it.comp.lang.c++
Titolo: Come gestire le stringhe di argv[]?

Vorrei fare un programma
che accetti, nella linea di comando,
tre parametri (tipo intero) e mi
dia il valore massimo dei tre.
Dove sto sbagliando??
//inizio
#include <iostream>
using namespace std;
int massimo (int a, int b, int c);
int main (int argc, char* argv[]) {
 
   int x, y, z;
 
   x = (int) &argv[1];
   y = (int) &argv[2];
   z = (int) &argv[3];
 
   massimo (x, y, z);
 
   return 0;
 
}
int massimo (int a, int b, int c) {
 
   int max = a;
 
   if (b > max)
	  max = b;
 
   if (c > max)
	  max = c;
 
   return max;
}
// fine
 

    z = (int) &argv[3];
Qui non va bene. Infatti stai convertendo un puntatore alla stringa del 
primo, del secondo e del terzo parametro in un intero. Ciò non è giusto: 
infatti, in x, y, e z finiscono, rispettivamente, la rappresentazione come 
intero del puntatore al parametro.
La modalità corretta per fare ciò che vuoi è quella di usare la funzione 
atoi( ... ):
        x = atoi( argv[ 1 ] );
        y = atoi( argv[ 2 ] );
        z = atoi( argv[ 3 ] );
Però, per essere veramente corretto, il codice dovrebbe tenere conto 
dell'eventualità che l'utente inserisca MENO di tre parametri. Quindi io 
riscriverei così:
        if ( argc < 3 )
                Usage( );
        x = atoi( argv[ 1 ] );
        y = atoi( argv[ 2 ] );
        z = atoi( argv[ 3 ] );
Dove Usage( ) è l'help-on-line sulla sintassi (che interrompe l'esecuzione 
del programma con un bell'exit( 0 )).
Ciao!
-- 
---
*************** | Have you ever retired a human by mystake?
*** Azathot *** |
*************** | To contact me, ask me gently. Thanks.

    z = (int) &argv[3];
Prima regoletta: in argc di main riporta quanti sono i parametri, anche se
sei pronto a giurare sulla graticola che userai sempre il programma con
tre parametri è buona pratica controllare come minimo il numero e non
dare mai per scontato che il programma venga chiamato correttamente.
Per il resto: argv[1], argv[2] e argv[3] sono già delle stringhe che devi
convertire in int. Per questo puoi usare la funzione standard atoi().

                Usage( );
il test deve essere "argc<4"
Andrea

 il test deve essere "argc<4"
Acc... mi era scappato un uguale... :)


 dare mai per scontato che il programma venga chiamato correttamente.
Chi ti dice che i tre argomenti siano numeri? Ok... e solo un esercizio...
ma può tornati utile anche la prossima volta che dovrai utilizzare i
parametri della linea di comando.
Prima di darli in pasto ad atoi() _controlla_ che siano numeri e non lettere
del alfabeto!
Ciao!
R. I.
Newsgroup: it.comp.lang.c++
Titolo: parametri di dafault....

Salve ;) pan....
Risolto tutto tranne:
Ho un costruttore vuoto e questo che ha dei parametri di default....bene 
perchè non mi compila? cosa sbaglio?
IntegerSet::IntegerSet(int n1, int n2=-1, int n3=-1, int n4=-1, int n5=-1){
                           if(n1<101&&n1>0) insieme[n1]=true;
                           if(n2<101&&n2>0) insieme[n2]=true;
                           if(n3<101&&n3>0) insieme[n3]=true;
                           if(n4<101&&n4>0) insieme[n4]=true;
                           if(n5<101&&n5>0) insieme[n5]=true;
                           }//fine costruttore pieno
Se creo un oggetto IntegerSet insieme(1,2,3,4,5) tutto ok, ma se creo
insieme2(1,2,3) non compila dicendo "no matching function for call to
IntegerSet..."


Questa è la *definizione* del costruttore. Prima ci sarà la dichiarazione. 
I parametri di default vanno specificati lì, e solo lì. Non nella 
definizione.
Max
Newsgroup: it.comp.lang.c++
Titolo: C++ Builder e la stampa: #@!!*// : (

Eccomi di nuovo qui con uno di quei quesiti che ti mandano al
manicomio perche di [apparentemente] facile soluzione...
Ho gironzolato per l'help del BCB alla ricerca del modo di stampare i
dati contenuti in un database, il risultato e' stato che riesco a
stampare tutto il form della mia applicazione (solo la parte
visualizzata of course) usando il metodo Print() ma non è quello che
sto cercando di fare ...
Nemmeno i dialogs mi aiutano: come faccio a dire a un componente
<TPrintDialog>cosa stampare? Voglio dire, ci sarà un buffer da cui
legge, un indirizzo di memoria dal quale recupera i dati da
stampare... ma dove?
Al momento, tutto ciò che voglio è stampare del testo (nella
fattispecie i campi di un record) ma dove "spedisco" il testo (e + in
generale i dati) da stampare?
L'help mi dice che non appeno clicco su 'Print' la stampa comincia
automaticamente, ma ... la stampa di cosa? (infatti nelle prove che ho
fatto non succede niente, e la cosa non mi sorprende...)
Qualcuno ha anche solo qualche idea/indizio/suggerimento ?
Tnx in advance :)

...

Tu devi usare una cosa del tipo
TPrinter *p= Printer();  // Salve il puntatore alla stampante
p->BeginDoc();   // Segnali l'inisio della stampa
// ....   Reimpi p->Canvas  con quello che voui stampare ( per stampare
stringhe usi p->Canvas->OutText )
p->EndDoc()  // Fine stampa : manda ala stampante
    Ciao
    Marco Lerda ( MLProg )



Per stampare dati da un database devi creare un report: in Builder si fa con
il QuickReport, ossia scegliendo New dal menu' File e poi la voce Report.
Sul form che appare metti le bande che ti servono, in particolare quella che
ti stampa i record di un dataset e' la banda Details. All'interno di questa
metti i componenti data-aware stampabili che trovi nella palette QuickReport
e li colleghi al datasource e al datafield che ti interessa. Per stampare il
tutto chiami il metodo Print() o PrintBackground() del QuickReport, oppure
Preview() ti apre una anteprima di stampa. Se tutto questo non ti e' stato
chiaro o non ti e' familiare fammi sapere che ti do maggiori e piu'
dettagliate indicazioni. In ogni modo, fai riferimento alla documentazione
del QuickReport che puoi trovare nella cartella QuickRpt all'interno di
quella dove hai installato il Builder (normalmente
Programmi\Borland\CBuilder).
--
Byez
Stefano Tempesta
temp...@tin.it
http://tempesta.freeweb.org


Newsgroup: it.comp.lang.c++
Titolo: Caricare un progetto in Visual C++

Uso Windows NT 4 e Visual C++ 5.
E' normale che il caricamento di un progetto richieda qualche minuto
occupando gran parte del tempo CPU??
Ciao

occupando gran parte del tempo CPU??
Puo` esserlo, a seconda della dimensione del
progetto, della CPU che hai, di quanta RAM hai,
eccetera.  Ad esempio, il progetto di NT 5.0 (non
meno di 20 milioni di righe) su di un 486 con 16
mega di RAM potrebbe anche metterci ore, non
minuti...!-)
Comunque, ci sono tipiche cose che possono
rallentare il caricamento di un progetto, tipo il
fatto di avere molti nodi "aperti" in InfoView (nel
caricare ci mette molto a riaprirli tutti), molte
Windows nell'editor, ecc, e anche grossi file
OPT, NCB, CLW, eccetera -- quindi ricorda,
se hai questo problema, quando esci dal
progetto chiudi prima tutti gli help (il treeview
dell'InfoView per l'esattezza) e le finestre di
editor, e dopo, magari, ogni tanto cancella i
vari file non-sorgenti del progetto (eccetto,
naturalmente, DSP e DSW!!!).
Alex

Grazie!
Ho fatto un po' pulizia dei vari opt, plg, clw e ncb e il progetto si carica
molto velocemente.
Ciao

...


Newsgroup: it.comp.lang.c++
Titolo: Typedef ???

Scusate se insisto a forza di domande, ma sono con l'acqua alla gola.....
typedef può essere usato all'interno di un file .h?
Mi da warning !!!
Grazie

 Mi da warning !!!
Forse hai molteplici inclusioni del .h nello stesso .cpp, perche`
typedef non puo` essere RIPETUTO.  Per evitarlo "vesti" ogni
file .h, ad esempio sia pippo.h, con
#ifndef PIPPO_H_INCLUDED
#define PIPPO_H_INCLUDED
// qui il vero pippo.h
#endif
trucco annoso ma purtroppo sempre necessario (vari compilatori
hanno modi nonportabili di fare la stessa cosa, ma resta sul
vecchio trucco portabile, che e` meglio).
Alex
Newsgroup: it.comp.lang.c++
Titolo: static (reserved word)

Salve a tutti.
Ho spesso utilizzato la parola "static" all'interno di una classe per
riferire una variabile di cui si crea una sola istanza per classe e fin qui
tutto bene.
Mi è capitato di leggere del codice C dove la parola static è usata nelle
dichiarazioni di funzioni come "static int function(char *)" .
1) Che significato ha "static" di fronte ad una funzione del linguaggio C
che non ha nozione di classe?
2) Si tratta di codice valido anche in C++?
3) Ci sono altri significati della parola "static" oltre quello descritto da
me in introduzione e quello a cui si riferisce la domanda al punto (1)?
Grazie in anticipo,
Fabio.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 me in introduzione e quello a cui si riferisce la domanda al punto (1)?
Si, la qualifica di una variabile locale a una funzione come static fa
si che la variabile mantenga il suo valore tra diverse chiamate della
funzione.
Ciao,
Nicola

 al punto (1)?
Molti:-).
  - Al nivello di namespace o di file, controlla la visibilità (il
    "linkage" del standard).
  - Su una variabile membro, fa che la variabile essiste una sola voltà,
    indipendente dal numero d'obietti.
  - Su una funzionne membro, fa che la fonzionne può essere chiamata
    senza obietto, e che la fonzionne non ha un this.
  - Su una variabile locale, fa che tutti li chiamati della funzionne
    utilizano la stessa instanza della variabile, chi vienne construito
    una sola volta, la prima volta che essecuzione ci arriva.
--
James Kanze           GABI Software         
http://www.gabi-soft.fr
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: Domandina banale, maurgente

con quale istruzione?
Non esiste un clear screen che funzioni per tutti i tipi di schermo,
e quindi non esiste un modo standard per farlo. Comunque ogni sistema
di sviluppo mette a disposizione un modo per farlo; l'unico problema
e' che non e' portabile.
--
Marco Danti
Remove NOSPAM from my address before replying - sorry

 CHIAVE
No. Il C ANSI non definisce direttamente alcuna funzione video.
Se sei su un terminale o un xterm, devi di solito specificare una
sequenza di escape appropriata, a seconda del terminale (vt100,
ansi, etc), oppure invocare system("clear").
Se lavori in dos, usa system("cls"), oppure le funzioni non ANSI
fornite dalla maggiornaza dei compilatori (in header come
conio.h o simili).
--
dr. Cristiano Sadun - Software Engineering and Consulting
***********Remove NOSPAM from address to reply***********
*********************************************************
"God is Real - unless declared Integer"

 con quale istruzione?
non si puo`, se vuoi qualcosa di portabile per creare interfacce in modo
testo di consiglio ncurses, e` disponibile su moltissime piattaforme.
-- 
[Ranger, email: 
ran...@racine.ra.it
]
Newsgroup: it.comp.lang.c++
Titolo: Suggerimento agli utenti Borland

Ciao a tutti.
Da che Borland ha iniziato a distribuire gratuitamente sia le vecchie
release del C++ Builder che il nuovo compilatore, il numero di messaggi
sottoposti al newsgroup relativi a questi prodotti e' aumentato
enormemente. Poiche' la stragrande maggioranza di questi messaggi e'
fuori dagli obbiettivi del gruppo it.comp.lang.c++ (al proposito si veda
il manifesto del gruppo, pubblicato periodicamente dagli
amministratori), perche' non proponete la creazione di un gruppo
apposito, che so, it.comp.lang.c++.builder, o simili?
In questo modo avreste un punto di riferimento per tutti gli interessati
a questi strumenti, senza disturbare chi si serve in modo appropriato di
questo newsgroup ed evitando cosi' le periodiche (e sacrosante!) ondate
di flame anti-OT.
In realta' un punto di riferimento di alta qualita' esiste gia' ed e'
dato dai newsgroup gestiti direttamente dalla Borland (disponibili dal
server 
forums.borland.com
), ma mi rendo conto che non tutti sono a
proprio agio nel discutere di questi argomenti in inglese.
Ciao,
Nicola Musatti

apposito, che so, it.comp.lang.c++.builder, o simili?
Poiché primo una RFD al GCN è lunga da creare, altrimenti l'avrei già
proposto.
Secondo perché sarebbe meglio un it.comp.programmare.vcl (quindi non
solo BCB, ma anche delphi), terzo perché che
it.comp.programmare.win32, che è più adatto di ICLC++
Comunque appena mi arriva la TimeKey3 di i2000, proporrò un NG simile
su i2000, ma non so quanto potranno arrivarci :-(
-- 
Ciao
DGP85
http://daps.cjb.net/

Newsgroup: it.comp.lang.c++
Titolo: Programma per spegnere il computer

Volevo creare un programmino in C++ che mi permette di spegnere il computer
una volta eseguito e magari prima dello spegnimento visualizzare un breve
testo. (WinMe)
Cosa devo fare?
Grazie

Devi prima assumere i privilegi per spegnere il computer:
SetPrivilege("SeShutdownPrivilege",TRUE );
poi lo spegnimento :
ExitWindowsEx(EWX_SHUTDOWN || EWX_POWEROFF || EWX_FORCE,0);
e infine restituire il privilegio :
SetPrivilege("SeShutdownPrivilege",FALSE);

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

Salve
perdonate la domanda forse stupida - ma sono alle prime armi-
ho compilato un programmino in C (e fin qui tutto bene) pero' quando
vado a lanciarlo appare il messaggio : segmentation fault ecc. ecc.
Sapreste dirmi cosa succede e come posso scoprire dove e' il problema?
Grazie
Leo

 ha scritto nel messaggio
news:395A8444...@tiscalinet.it...

Molto probabilmente accedi tramite un puntatore ad una zona di memoria a cui
non dovresti accedere.
Prova a debuggarlo o con un debug o inserendo dei trace point nel programma
in modo da vedere dove fai la violazione di accesso alla memoria.
Se il programmINO non è troppo grande puoi mandarmelo o metterlo sul
newsgroup in modo da poterti aiutare di piu'.