Newsgroup: it.comp.lang.c++
Titolo: Aiuto! (Borland C++)

Avrei 3 domande da porvi che credo possano interessare molti altri neofiti
come me:
1) Ho provato a compilare e linkare un semplice programma in C++ che avevo
scritto per il DOS (il solito "Hello World", ), usando il Borland C++
Builder invece del DJGPP.
Ho apportato qualche modifica per caricare i file di libreria giusti (almeno
credo…) e tutto è filato liscio in fase di compilazione e di link, ma quando
vado a premere il RUN vedo comparire solo per una frazione di secondo una
piccola finestra (presumibilmente con la scritta in questione). Ho provato
ad inserire una linea di codice che preveda un input da tastiera (COUT ecc.
ecc.) per cedere se potevo bloccare in un certo senso il programma, ma
niente da fare.
Da cosa dipende secondo voi?
2) Inoltre volevo sapere se è possibile usare il Borland C++ Builder per
continuare a scrivere anche semplici programmi per Windows invece di
continuare sulla strada del DJGPP (dato che i programmi per DOS non mi
interessano più di tanto).
In tal caso sarebbe opportuno, secondo voi, leggere un libro che tratti
specificamente l'argomento?
Se sì quale?
3) Studiando da autodidatta il C++ mi sono arenato sulle Classi. Io credo
che il libro che ho a disposizione (Chi ha paura del C++? Di Steve Heller)
faccia un po' di casino su questo argomento (mentre è molto chiaro su tutto
il resto), perché fa un sacco di premesse e introduce un mucchio di
definizioni che un principiante come me non può digerire senza almeno
qualche piccolo esempio propedeutico. HO abbandonato subito la lettura anche
perché lì per lì non avevo molto tempo a disposizione da dedicare
all'argomento, e poi non ho più ripreso in mano la questione.
(Tengo a precisare che non credo di essere duro di comprendonio, perché in
altre occasioni ho assimilato velocemente qualsiasi argomento di qualsiasi
disciplina, anche i più complessi - dalla matematica alla fisica, ecc..
ecc.)
Ora invece ho installato il Boralnd e mi è venuta nuovamente la curiosità,
ma non me la sento di rituffarmi nel libro di Heller sull'argomento Classi.
C'è del materiale fatto un po' meglio su questo argomento? Oppure posso
scavalcare l'ostacolo (mi illudo, vero???) proprio grazie al Borland?
Grazie a tutti!
Kalle

 scavalcare l'ostacolo (mi illudo, vero???) proprio grazie al Borland?
La fatica ci vuole. I miei testi di C++ sono stati Schildt e Eckel. Il primo
e' piu' semplice da capire; tratta la OOP come un estensione del modo di
programmare. Eckel invece parte subito con le classi perche' ritiene di
fissare subito l'approccio OO.
Achilel

> Se vuoi l'input da tastiera serve un "cin >> variabile;" e non il cout.
Infatti ho provato a mettere anche
short n;
cin>>n;
ma il programma non si ferma!
Cmq ho scoperto una cosa: il RUN che premo č relativo alla compilazione e/o
al link (scusa ma non conosco il Borland); mi viene creato un file
Project.exe, ma se lo clicco non mi parte.
Grazie di tutti i consigli ;-)

ma il programma non si ferma!
prova cosi´:
#include <iostream>
using namespace std;
int main()
{
    // tuo codice
    cout << "Premere il tasto <x> per terminare << endl;
    char c = 0;
    while (c != 'x')
        cin >> c;
    return 0;
}

cout << "Premere il tasto <x> per terminare" << endl;
mannaggia alla fretta....scusami avevo lasciato l徨pice finale della
stringa.

     cout << "Premere il tasto <x> per terminare << endl;


Per uscire dal tuo programma prova questo che e´ testato e funziona:
int main()
{
    std::cout << "Premere il tasto <x> e <enter> per uscire" <<     endl;
    char c = 0;
    while (c != 'x')
       std::cin >> c;
    std::cout << "Fine!" << endl;
    return 0;
}
Dimmi se vedi eventuali messaggi di errore o warning in compilazione e
linkaggio nel caso non ti funziona.
Per quanto riguarda l´eseguibile, dovresti fare una ricerca dalla cartella
dove hai creato il progetto in tutte le sue sottocartelle, e controllare gli
eseguibili che trovi. Alla peggio fai una ricerca in tutto il tuo hard disk,
ben sapendo il nome del tuo file.exe.
Probabilmente nelle opzioni del tuo compilatore viene specificata una
cartella differente da quella dove ci sono i tuoi sorgenti.
Ciao
Mauro

 linkaggio nel caso non ti funziona.
Tutto ok nella compilazione e link (il msg finale è "Done: Build All").
Però se clicco Project1 non succede niente!
Secondo me inizio nel modo sbagliato, ti spiego:
1) una volta avviato Builder chiudo tutte le finestre che trovo aperte di
default (mi ci viene un Form, ma a che mi serve?).
2) scelgo: File_New Unit
3) lì dentro ci scrivo il codice (aggiungo prima #include<iostream.h> sennò
non mi accetta cout e cin)
4) premo l'icona del  Run (quella freccetta verso destra) oppure altre volte
ho provato a cliccare Projects_Build All Projects.
5) tutto fila lisco e poi vado a vedere cosa è venuto fuori:
Project1.obj       Unit1.obj      Project1.exe
Se clicco su quest'ultimo non succede niente!

#include <iostream>
Bisogna usare
#include <iostream.h>
altrimenti il programma non funziona. Vediti gli esempi in
\bc5\examples\stdlib, usano tutti <iostream.h>. Inoltre per compilare
adeguatamente, bisogna andare nel TargetExpert ed impostare il
Platform su Win32 e il Target Model su Console.
Bye.

 Platform su Win32 e il Target Model su Console.
Provo subito, grazie 1.000!