mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: Domanda STL

Ciao!
Ecco il mio problema:
so che è possibile, dato
vector <int> iv;
riferirsi al suo i-esimo elemento con
iv[i];
E' possibile il viceversa? Ovvero, dato un iteratore itr che, ad
esempio, scandisce il vettore in un ciclo, posso sapere a che numero
corrisponde l'oggetto puntato dall'iteratore?
Adesso come adesso sono costretto a incrementare parallelamente un
contatore, ma non mi sembra il massimo...
es:
  Pizza *result = new Pizza[k];
  int i = 0;
  for (vector <struct scoreEntry>::const_iterator itr = data.begin();
       itr != data.end(); itr++)
    {
      result[i] = itr->pizza;
      i++;
    }
grazie, giulio
Per favore togliete "!RemoveMe!" dall'indirizzo per rispondere
Please remove "!RemoveMe!" from the address to reply

]

     }
Altre possibilita':
  Pizza getPizza( const ScoreEntry& e ) { return e.p; }
  ...
  std::transform( data.begin(), data.end(), result, getPizza );
oppure, se ScoreEntry::pizza e' un metodo
  std::transform( data.begin(), data.end(), result,
		  std::mem_fun_ref(&ScoreEntry::pizza) );
oppure, in stile C:
  Pizza* p = result;
  for (...)
    *p++ = itr->pizza;
 
	Mauro

     }
Il valore di i in uscita dovrebbe essere equale a itr-data.begin.
Naturalmente, se dichiari itr entro le parentesi del for, in un
compilatore standard (ahime` non in VC++, e` una deviazione
dallo standard) esso uscira` di scope alla chiusa-graffa del
for.  Ma almeno entro il for puoi usarlo, scrivendo, se vuoi,
    result[itr-data.begin()] = itr->pizza;
Questo, benche` corretto, e` poco idiomatico.  Molti invece
preferirebbero qualcosa come "Pizza *p = result;", e poi:
    *p++ = itr->pizza;
nel corpo del for.  Comunque, un buon compilatore dovrebbe
agevolmente generare codice equivalente nei due casi.
Alex

Newsgroup: it.comp.lang.c++
Titolo: Comando per programma console!!!

Ciao a tutti sto realizzando una piccola applicazione a console in c#, 
vorrei sapere se esiste un comando che permette di lasciare apperta la 
finestra console durante l'esecuzione del programma, in modo tale che 
lanciando l'eseguibile si apra la finestra dos e rimanga aperta fino alla 
fine dell'esecuzione del programma e successivamente venga chiusa 
manualmente.
Grazie per chi mi vogli rispondere!!! 

Ciao,
Questo newsgroup si occupa del linguaggio di programmazione C++. Per
questo non e' il posto piu' adatto per porre domande come la tua. Ti
invito a cercare un gruppo il cui argomento sia piu' rispondente alle
tue esigenze. Avrai maggior probabilita' di risolvere il tuo problema
ed
eviterai perdite di tempo a chi consulta it.comp.lang.c++ .
Grazie,
Nicola Musatti
Newsgroup: it.comp.lang.c++
Titolo: Array di Byte in/out

Visto che si parla di Array ho un problemino che non mi riesce di risolvere
su un ActiveX C++ di prova; uso questo activex sul VB, dove dal VB prendo il
valore della proprietà (un variant contenente un array di byte),  lo elabora
e poi lo passa ad un metodo che ha come parametro un variant.
(premetto che sono un principiante di VC++)
Ho dichiarato in c++ e inizializzato un array di byte nel seguente modo:
 BYTE   *pbArray;
 pbArray = (BYTE*)malloc(1024);
(ho usato malloc per generare un array di byte dimensionabile a run-time)
poi ho creato una proprietà che restituisce un VARIANT:
VARIANT PippoCtrl::GetBData()
{
 COleSafeArray saRet;
 saRet.CreateOneDim(VT_UI1, 1024, pbArray);
 return saRet.Detach();
}
fine qui tutto bene ?....
ed infine ho creato un metodo a cui passo il VARIANT:
BOOL PippoCtrl::Verify(VARIANT FAR* lpbArray)
{
 BOOL bValid;
 if (V_VT(lpbTemplate) != (VT_ARRAY | VT_UI1))
  AfxThrowOleDispatchException(1001,"Type Mismatch in Parameter. Pass a byte
array by reference.");
VariantChangeType(lpbArray, lpbArray, 0, VT_UI1);
...
... altro codice che fa l'elaborazione e ritorna il valore in bValid
...
 return bValid;
}
il problema nasce quando recupero il valore della prorpietà e poi lo ripasso
al metodo, senza elaborazione da parte del VB che da parte di VC++ quindi in
teoria uguali, se comparo i risultati risultano diversi, an'do sbajo ?
:))

 ha scritto nel messaggio
news:q%2J9.66114$qF1.2...@news2.tin.it...


La prossima volta pero' chiedi su it.comp.programmare.win32 . Qui si
parla di C++ standard e non di prodotti Microsoft.
Ciao,
Nicola
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.lang.c++
Titolo: ottimizzare il codice

linguaggio, ma mi sa che sarà difficile trovare un'applicazione simile...
Ma per lo stesso principio con cui la fpu viene utilizzata nelle operazioni
a virgola mobile solo se esiste (oppure disabilitandone il supporto,
linkando all'exe un determinato .obj per quanto riguarda il VB), perchè non
si può fare la stessa cosa?
Ciao by Stefano from Italy
Online as 
s.pe...@usa.net

Newsgroup: it.comp.lang.c++
Titolo: E' possibile salvare direttamente un oggetto ?

E' possibile salvare direttamente un oggetto ?
cioč 
p.es
. :
TDate lastDate;
AnsiString myString("ciao");
FILE *stream;
if ((stream = fopen(fileName.c_str(), "w")) == NULL)
                        return false;
fwrite(&lastDate, sizeof(lastDate), 1, stream);
fwrite(&myString, sizeof(myString), 1, stream);

 E' possibile salvare direttamente un oggetto ?
In generale no, solo oggetti che sono "POD" ("Plain Old
Data"), cioe` senza costruttori, senza metodi virtuali, &c.
Non e` tanto un problema "salvarli" (quello danno non fa),
e` "ripristinarli" piu` avanti che non e` standard...!
Alex

 cioè 
p.es
. :


Newsgroup: it.comp.lang.c++
Titolo: Domanda sul VC++ 6.0

ma certo che si puņ compilare in dos ...
Visual C++ 6  include un compilatore dos eccellente
--
Posted from 
IDENT:ro...@dns.elenet.it
 [212.141.164.2] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

ma certo che si puň compilare in dos ...

Newsgroup: it.comp.lang.c++
Titolo: Trasferimento dati via DLL

Salve a tutti!
Ho un problema che non riesco a risolvere, utilizzo il C++ Builder della
Borland e ho costruito una DLL richiamabile dal Visual Basic, ma non riesco
a trasferire un vettore numerico.
Sia il manuale che l'Help in linea mi hanno lasciato molti dubbi!!!
Codice VB:
declare function nomefun lib "nomelib.dll" (ByRef Vettore() as Integer) as
Integer
Premesso che altre funzioni della stessa libreria si comportano
correttamente, come posso leggere il vettore nella DLL fatta in C++???

On Sun, 15 Aug 1999 20:44:48 +0200 "Skywalker" <yod...@TOGLIgeocities.com>
wrote:

Temo tu debba usare i SAFEARRAY, che sono poco, ehm, intuitivi in C++. Ne
parlavo con Don Box qualche giorno fa, probabilmente ne fara' una column su
MSJ con tanto di wrapper comodo dal C++. Nel frattempo: MSDN :-)
Davide Marcato.
----------------------------------------------------
| -- Freelance International Consultant
| -- Windows/COM(+) Development & Training
| -- Technical Writer & Speaker
----------------------------------------------------
| -- Email: 
mar...@programmers.net
| -- Web: 
http://www.DavideMarcato.com
 (UPDATED!)
----------------------------------------------------

Newsgroup: it.comp.lang.c++
Titolo: programmare e compilare c è totalmente freeware

per sviluppare un applicativo in c
è possibile usare sia per programmare che per compilare
software totalmente freeware?
che programmi rad sotto win suggerite?
inoltre per chi conosc il php quale è preferibile usare c o c++?
esistono applicativi semplici per capire come sono fatti
esempio aprire dir sul proprio pc, cambiare nome a file,
gestione immagini, etc..;
in visual basic ricordo che vi erano molti miniapplicativi 
da poter studiare come esempi;
non ho capito poi le differenze rispetto a delphi;
a parte credo il rad che è molto potente; 
ma il linguaggio poi è lo stesso?
 

 ma il linguaggio poi è lo stesso?
No. Delphi si basa su Object Pascal.
Un RAD simile a Delphi era Borland C++ Builder, che adesso si chiama 
Borland Turbo C++, ma non e' freeware.
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila

 chiama Borland Turbo C++, ma non e' freeware.
http://dn.codegear.com/article/33659
In particolare:
Q. Can I use the Turbo Explorer Edition for commercial 
development?
A. Yes. Explorer Edition can be used for developing software for 
both personal and commercial use.
-- 
Stefano Frosio
www.esse-effe.com

 software totalmente freeware?
Microsoft Visual C++ 2005 Express Edition
-- 
Ciao!

 Turbo C++ versione Explorer.


 Framework .NET e questo non è proprio il massimo.
E' possibile.
  bye
	av.

Giusto! Ho trovato l'opzione nelle proprietà del progetto: pare che si 
debba mettere "senza supporto Common Language Runtime".
Aspidus
Andrea Venturoli ha scritto:

Newsgroup: it.comp.lang.c++
Titolo: Problema nella definizione di una sockaddr_in...

Scusate la domanda stupida (e temo anche un po' OT, visto che questo è un NG
di c++, ed io invece programmo solo in c), ma volevo sapere come fare per
impostare la voce:
sock_in.sin_addr.s_addr
dove sock_in è ovviamente una variabile di tipo sockaddr_in. La voce in
questione dovrebbe contenere un indirizzo ip, se non sbaglio, ma non posso
certo inserirlo ponendo
sock_in.sin_addr.s_addr=192.168.0.1 (ho anche provato a farlo, ma ovviamente
mi da' errore)
immagino ci sia una funzione che mi converte l'indirizzo in un unsigned
long, ma non conosco il nome di questa funzione. Qualcuno sa darmi maggiori
informazioni?
Spero di non essere stato troppo prolisso, e cmq ringrazio tutti per
l'attenzione :)
Ciao

Costante server e porta :
#define PORT 6666
#define SERVER "127.0.0.1"
Funzione di inizializzazione:
void addr_initialize(struct sockaddr_in *indirizzo, int port, char* IPaddr)
{
   indirizzo->sin_family = AF_INET;
   indirizzo->sin_port = htons((u_short) port);
            /
   indirizzo->sin_addr.s_addr = inet_addr(IPaddr);
}
Nel main:
addr_initialize(&server_addr, PORT, SERVER);

[...]
Tanks

Newsgroup: it.comp.lang.c++
Titolo: [Forse OT] DirectX e c++

Qualcuno sa dove posso trovare materiale utile per imparare ad usare le
directX ?
Grazie ReDiCuori
-- 
L'informatica è un arte
---------------------------------------------------------
 
www.pascallike.too.it
 
http://utenti.lycos.it/pascallike
 il sito sulla programmazione pascal
 sorgenti, tutorial ed utility
---------------------------------------------------------

 
Sul sito della microsoft, sezione directx, cerca l'SDK

Newsgroup: it.comp.lang.c++
Titolo: quesito sull'output

Vorrei sapere perche in questa funzione
void lungStr(char *ch){
 int lung=0;
 char* p=ch;
while(*p++)
     lung++;
 cout<<ch<<":"<<lung;
}
VIENE STAMPAta prima la stinga ch e poi per stampare l'intero lung va da
capo .
-- 
Posted from 
mail-2.tiscalinet.it
 [195.130.225.148] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Forse perche´ nella stringa ch c´e´ un a capo ovvero un "\n" ?
Mauro
Newsgroup: it.comp.lang.c++
Titolo: (OT?) Cerchiamo Collaboratori x magazine

Cerchiamo redattori/collaboratori in diverse sezioni per il nuovo magazine
sull'informatica di Tempolibero.com .
Per i redattori fissi offriamo mail e spazio web.
Maggiori informazioni:
http://digitezine.cjb.net
dig...@tin.it
Scusate se vi abbiamo recato disturbo... Cordiali Saluti
Redazione Dig.it

Sto muovendo i primi passi nel C++.
Ho provato a scrivere un semplice programma usando struct , ma ho dovuto
definire i puntatori a char nella sua struttora per ricevere i dati tramite
Edit->Text... ma ovviamente non funziona...scrivendo in tutti i field l'
ultimo dato immesso.  Se qualcuno ha un suggerimento, rispondetemi, ci sto
diventando matto!!                 Mons.
struct Persona{ char *nome; char *cognome; char *n_tel; };
Persona Pippo;
Pippo.nome=Edit4->Text.c_str();
Pippo.cognome = Edit5->Text.c_str();
Pippo.n_tel=Edit6->Text.c_str() ;
Edit1->Text=Pippo.nome;
Edit2->Text=Pippo.cognome;
Edit3->Text=Pippo.n_tel;

Mi pare che l'oggetto Edit si aspetti campi di tipo
string e non char*
Paolo
-----------------------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------------------------

Newsgroup: it.comp.lang.c++
Titolo: Qt: compilazione in modalità static linking sotto windows

Ho installato il pacchettone di Qt (1.4 Gb di peso...) sotto Windows Vista.
L'eseguibile che mi crea necessita delle dll per rendere il programma 
funzionante (non vengono incorporati dentro lo stesso eseguibile).
Anche se lo vieta la licenza di Qt, sapete dirmi se č possibile compilare in 
modalitą statica anzichč dinamica?
 
Ciao
 
nero23 
 

 nero23
 
Anche compilando in maniera dinamica,
basta che tu rilasci l'eseguibile in una cartella dove inserisci quelle 
poche DLL delle Qt che utilizzi.
 
Maurus
 


 
Ciao Soviet,
hai ragione.
Il mio era un semplice suggerimento per fargli fare una cosa più 
semplice e a mio avviso con più vantaggi che svantaggi dell'altra 
opportunità.
Nell'altro caso (librerie statiche), dovrebbe ricompilare staticamente 
tutta la libreria Qt e non penso nemmeno che ci siano problemi di 
licenza nel caso in cui non vi sia bisogno di QtHelp, QtNetwork, 
QtWebKit e Phonon.
In caso contrario bisogna vedere cosa dicono le licenze legate a questi 
4 componenti.
Per maggior chiarezza vedere qua:
http://doc.trolltech.com/4.6/deployment.html
 
 
Maurus
 


Ancora più in dettaglio per sistemi Windows qua:
http://doc.trolltech.com/4.6/deployment-windows.html
 
 
Maurus
 

 poche DLL delle Qt che utilizzi.
 
 
Questo l'ho già fatto e funziona.
 
Ciao 
 


Hai guardato qua?
http://doc.trolltech.com/4.6/deployment-windows.html
 
 
Maurus
Newsgroup: it.comp.lang.c++
Titolo: Come leggere un file riga per riga...

Salve, dovrei leggere un file di configurazione con il CPP..standard
ANSI (Deve girare su WIN,LINUX,HPUX,SOLARIS)
Il problema è che la normale funzione di lettura:
char pippo [255];
ifstream leggo("NOMEFILE");
leggo >> pippo;
leggo tutto il file..ma il problema che pippo si spezza ad ogni
spazio.
Come faccio a leggere il file riga per riga indipendentemente dal
contenuto..ed ovviamente considerando il fine riga standard "\n"
Grazie a tutti, Ciao
Lorenzo

 contenuto..ed ovviamente considerando il fine riga standard "\n"
std::getline(std::istream, std::string)
dovrebbe fare al caso tuo. Se il terminatore e' "sempre" '\n', puoi 
passarlo come terzo parametro.

prova con il metodo get, vorrei aiutarti di più ma non ho la documentazione
sotto mano e non ricordo.
Lanugo

 ANSI (Deve girare su WIN,LINUX,HPUX,SOLARIS)
prova a partire da qua
// leggi.cc
// leggi un file una riga per volta
#include <iostream>
#include <fstream>
#include <string>
#include <list>
#include <iterator>
typedef std::list<std::string> lista;
void visualizza_file(lista& l)
{
  std::copy(l.begin(), l.end(),
std::ostream_iterator<std::string>(std::cout,"\n"));
}
int main()
{
  std::cout << " leggo il file leggi.cc" << std::endl;
  lista mia_lista;
  std::string riga;
  ifstream in;
  in.open("leggi.cc");
  while(!in.eof())
    {
      std::getline(in, riga);
      mia_lista.push_back(riga);
    }
  in.close();
  visualizza_file(mia_lista);
}
ciao Nicola Z.
Newsgroup: it.comp.lang.c++
Titolo: File temporali....



file le parti già lette vengano eliminate così da non occupare più spazio?
L'unico approccio portabile e` dividere quello che tu
chiami "un file", e che nel tuo programma tratterai come
tale ad un livello appena piu` astratto, in quelli che al
sistema operativo "appaiono come" (se preferisci, "sono
fisicamente"!) molteplici file piu` piccoli; in C++ Standard,
non e` troppo difficile realizzarlo con un subclassing di
streambuf, in modo che al resto del tuo programma il
tutto appaia come uno stream qualunque (con l'unica,
ovvia, inevitabile differenza che, anche per aprire "in
lettura" uno di questi "file multipli", si dovranno avere i
permessi di R/W/D, visto che la "lettura" risulta, in realta`,
"distruttiva" per i file fisici "letti").
Usando come dimensione fisica dei file piu` piccoli un
multiplo del cluster di allocazione del sistema operativo
(puoi determinarlo solo in modo non-portabile, ma puoi
anche decidere di fissarlo a priori a una cifra "credibile",
tipo, 64k), questo approccio dovrebbe avere un costo
minimo -- un cluster in piu` per il directory, un piccolo
overhead di tempo per apertura/chiusura/cancellazione
di molteplici sotto-file nel corso della lettura/scrittura di
un singolo "file logico".
Una volta definita la sottoclasse di streambuf, creare un
"file" (fatto di molteplici sottofile) del genere da uno
normale, o viceversa, e` al livello del solito:
    fin >> fou.rdbuf();
o  fou << fin.rdbuf();
o giu` di li`, insomma una bazzecola dal punto di vista
della scrittura del programma.  E _tutto il resto del
programma_ puo` usare normalissime istruzioni di I/O,
tipicamente gli operatori << e >>, ma anche getline,
eccetera.
Un'altra controprova, direi, della flessibilita`, potenza,
e incredibile facilita` d'uso della Libreria Standard C++,
che pure tanti programmatori, magari per miope pigrizia,
si intestardiscono ad ignorare o sottovalutare...!
Alex

// \/\//\\/E++
void message () {
Ahhh, il C++
Più lo conosco, e più mi viene voglia di usarlo!
Grazie per il consiglio! :-))


Ciao, Alessandro.
Se un giorno mi vedrete su tutti i telegiornali come l'uomo che smanettò a
SMANETTONE con il dna e il c++ e si fece un culo grande come un condominio
vorrà dire che lavoravo di LOSCO!
Se invece non mi sentirete più vorrà dire che havrò finito con questo
stramaledettissimo algoritmo, adrò incassato i miei $$$ e sarò andato a
godermeli alle Havai! o Bahamas.... vedrò! Ho tempo!

Newsgroup: it.comp.lang.c++
Titolo: Qualche guida??

dove posso trovare sul web delle guide? (buone)
ciao

> dove posso trovare sul web delle guide? (buone)
Prova su:
www.programmazione.it
programmazione.interfree.it
www.ldmsoft.it
www.manuali.net
www.mokabyte.it
Ciao.
-- 
La classifica dei prodotti MS:
C#, la migliore barzelletta di Bill Gates.
Visual C++, il meno standard dei compilatori C++.
J++, la copiatura più riuscita.
Windows, il più instabile.
Visual Basic, un esempio di prodotto decente della MS - forse l'unico -.
OutlookExpress, scandali su scandali.
La classifica degli "amici" coglioni:
Stefano Zanchi, il miglior lamer del mondo.
 

 ha scritto nel
messaggio news:01c0733b$ef2c5aa0$LocalHost@libero...


riferita magari a sistemi unix
La TrickyC parla solamente del linguaggio C e propone numerosi argomenti
che nulla riguardano lo standard del linguaggio.
Inoltre è disseminata di errori.
Cmq se vuoi qualche manuale C puoi andare nella sezione delle faq del
gruppo it.comp.lang.C dove potrai trovare numerosi link a riguardo.
Inoltre, sempre sul medesimo sito, è disponibile quasi in esclusiva il
tutorial di Paolo Marotta, uno dei più esperti programmatori C++ in Italia.
Per quanto riguarda lo Unix non saprei dove indirizzarti.


 Windows, il piů instabile.


(aspetto sempre il nome di una guida "must")
Eccotene tre:
"C++, una panoramica sul linguaggio" seconda edizione del libro scritto dal
Sig. Paolo Marotta.
"introduzione al linguaggio C" di Fiorella Sartori.
(Li trovi entrambi sul sito soprascritto.)
"C and C++ Brothers" di Gianluca Alberico. Lo trovi al sito 
www.ldmsoft.it
Queste sono  quelle che puoi trovare sulla rete e posso dirti che sono
complete.
Inoltre nelle faq ufficiali del gruppo (sempre sul medesimo sito) vi sono
parecchi riferimenti a guide per esperti o per principianti.
PS: se vuoi posso vedere di scrivere un manuale nel week-end e spedirtelo
poi via e-mail. :))))
Ciao.
-- 
La classifica dei prodotti MS:
C#, la migliore barzelletta di Bill Gates.
Visual C++, il meno standard dei compilatori C++.
J++, la copiatura più riuscita.
Windows, il più instabile.


 ha scritto nel
messaggio news:01c07571$cb7a0660$LocalHost@libero...

Newsgroup: it.comp.lang.c++
Titolo: BCPPB e seriale

Ciao a Tutti !!!
Ho la versione Standard di BCPPB 3, questa versione non
ha nessun componente visuale per la comunicazione seriale.
Quali funzioni devo usare per poter controllare, inviare e ricevere
caratteri tramite la porta seriale ?
Grazie !!!
      Ciao !!!
          Francesco

 caratteri tramite la porta seriale ?
Puoi trovare componenti VCL freeware e shareware per la comunicazione seriale in
vari siti, tra cui Delphi Super Page e Torry Delphi Pages.
Saluti
Paolo

Newsgroup: it.comp.lang.c++
Titolo: gcc e g++

Qual e' la differenza tra gcc e g++?
Grazie, Marco

 
GCC == GNU Compiler Collection (Collezione di compilatori).
g++ e un compilatore della collezione.

 ha scritto nel messaggio
news:bk7k5d$2...@dispatch.concentric.net...

diciamo che il GCC compila in puro C (compila anche il c++ ma non attivando
tutto il dovuto) il G++ invece compila nativamente il C++ (ed anche il c
mostrandoti caso mai tutti gli errori di cast ecc ...)
ciao
Newsgroup: it.comp.lang.c++
Titolo: fare aspettare un prog

>e-mail<<
Mac...@iol.it
ICQ UIN : 3680241
http://users.iol.it/maclot

builder.
Non esiste, perche' in C++ builder lo si puo' costruire.

 wrote in message
390851bc...@news.libero.it...


automatico dentro un programma.
Prima di risponderti ti avverto che imposto il follow-up su
"it.comp.programmare.win32" perche' siamo off-topic qui dentro.
Allora, la funzione che devi usare e' ricorsiva e si basa su due/tre
funzioni che Borland C++ Builder dovrebbe metterti a disposizione :
FindFirst(), FindNext() e chdir() ;
Lo pseudo-codice e' il seguente :
funz ListaFiles( Directory, Livello )
{
     spostati in Directory
 
     Trova il primo file cercato
     finche' ne hai trovato uno
     {    
          se NomeFile non inizia per '.' 
          allora
          {
             se il file e' una directory 
             allora chiama 
                    ListaFiles( NomeFile, Livello+1 ) 
             altrimenti
                    scrivi NomeFile                    
          } 
          Trova il prossimo          
     }
     se Livello e' > 1 allora
        torna alla directory superiore
}

 directory. Vorrei creare un ciclo che si occupa di estrarre i nomi dei
files
Non e` una funzionalita` che sia parte del C++ Standard.
Chiedi quindi sui gruppi dedicati alle specifiche
piattaforme di tuo interesse (linux, win32, ecc ecc)
poiche` su ogni piattaforma si fa in modi diversi.
Alex
Newsgroup: it.comp.lang.c++
Titolo: Problemi con SetFucus

Salve,
C'e' quancluno che e' riuscito a far funzionare la funzione membro
CWnd::SetFocus() per cambiare il focus da un campo di imput ad un altro
in una dialog.
Ringrazio in anticipo chi mi sapra' dare informazioni.
-- 
     (ZZZ)       Filippo Salotti, Bagni di Lucca, Lucca, Italy.
    //   \\  _                 E-mail : 
fil...@humnet.unipi.it
   /Y\    ZD<_o===============================================o
 .oZZZZZo.     | Studente Ingegneria Informatica Automatica  |
<OXXXXXXXO>    | Dip. Sistemi Elettrici Universita' di Pisa. |

Ringrazio in anticipo chi mi sapra' dare informazioni.
Qual e' il problema...?
Alex
Newsgroup: it.comp.lang.c++
Titolo: Aiutate un newbie





Ho iniziato da poco con il c++ e gradirei conoscere il codice di un 
programma che letti tre numeri ti dica qual è il maggiore e quale il  
minore (semplice, 
vero?).
          
             
Per favore 
aiutatemi,
                                          
Rizzi



Io lo farei così:
#include <iostream.h>
#include <conio.h>
#define MAX 3
void main() {
    int num[MAX], tmp;
    for (int i=0; i<MAX; i++) cin >> num[i];
    for (int j=0; j<MAX-1; j++) {
        for (int k=j+1; k<MAX; k++) {
            if (num[j]<num[k]) {
                tmp=num[j];
                num[j]=num[k];
                num[k]=tmp;
            }
        }
    }
    cout << "\nNumeri ordinati:\n";
    for (int p=0; p<MAX; p++)
        cout << num[p] << " ";
    getch();
}
MAX contiene la quantità di numeri che vuoi confrontare, quindi il codice
può funzionare anche con più (o meno) di tre numeri.
P.S. In genere, e te lo dico per esperienza, in questo newsgroup non vieni
ascoltato se chiedi di farti risolvere un problema; sarebbe meglio che tu
provassi a trovare una soluzione da solo, chiedendo eventuali chiarimenti se
c'è qualche cosa che non ti torna.

Una soluzione supponendo che i tre numeri siano interi ( ma ci hai provato
da solo? ):
#include <iostream>
int main(){
        int a, b, c;
        std::cin >> a;
        std::cin >> b;
        std::cin >> c;
        int max =  a > b ? ( a > c ? a : c ) : ( b > c  ? b : c);
        int min =  a < b ? ( a < c ? a : c ) : ( b < c  ? b : c);
        std::cout << "Maggiore: " << max << std::endl;
        std::cout << "Minore: " << min << std::endl;
       return 0;
}
o un'altra:
#include <iostream>
int main(){
        int a, b, c;
        std::cin >> a;
        std::cin >> b;
        std::cin >> c;
        int max = std::max(a, std::max(b, c));
        int min = std::min(a, std::min(b, c));
        std::cout << "Maggiore: " << max << std::endl;
        std::cout << "Minore: " << min << std::endl;
}
-- 
Posted from [194.214.173.28] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.lang.c++
Titolo: Libreria grafica 3d semplice

Sto cercando una semplice libreria grafica che mi visualizzi semplici solidi
in 3d. Ho cercato in internet, ma ho trovato solo librerie molto
complesse...  e purtroppo ho pochissimo tempo da dedicare a questa cosa. Mi
servirebbe giusto una libreria a cui dico: disegna il solido con questi
vertici (es. un cubo), e lei me lo fa vedere in 3d senza nessuna texture e
da un'angolazione qualunque, l'importante è che si veda bene.
Grazie per eventuali info!
Roger

 Grazie per eventuali info!
Dai un occhio ai tutorial di Nehe su OpenGL
http://nehe.gamedev.net/
e la versione corrispondente per DirectX
http://nexe.gamedev.net/
Al cubo che serve a te ci arriva alla quinta lezione del tutorial,
per cui non dovrebbe risultarti troppo difficile.
Comunque la domanda qui sarebbe OT e ti dovresti rivolgere a
NG piů indicato come
it.comp.programmare.win32
o
it.comp.os.linux.development
a seconda del tuo SO.
Un NG dove perň puoi trovare dei buoni suggerimenti per il
tuo problema č anche
it.comp.giochi.sviluppo
dove, a rigor di logica, saresti OT, ma di solito sono molto
disponibili anche per questioni come la tua.
saluti
--
E' in corso l'RFD di it.comp.software.webserver
Message-ID: 
MK.it.comp.softw...@news.nic.it
Se sei interessato discutine su it.news.gruppi
Se ti va bene cosě la proposta, dimmelo privatamente in e-mail

 wrote

http://www.marcus-software.ch

 wrote in message
news:b0cdq2$h88$1...@lacerta.tiscalinet.it...

Ma e' a pagamento o sbaglio?
Maurus


Si, e' a pagamento, ma la si puo' utilizzare tranquillamente entro le "mura
domestiche".

Newsgroup: it.comp.lang.c++
Titolo: nel mio Linux non c'è iostream !!!

Salve, ho installato Linux Mandrake 7.1 (una delle ultime distribuzioni), e
accingendomi a provare il compilatore con dei semplici programmini mi sono
accorto che non c'è iostream! Non lo trova, e infatti sul sistema non esiste
nessun file con quel nome (header o altro). Ma come mai? Non dovrebbe essere
un componente fondamentale? Ho controllato i package e sono tutti installati
a dovere.
Boh! Chi mi sa dire qualcosa?
Grazie in anticipo!
Michele

 wrote:
Un compilatore C++ non e` tenuto a implementare gli include
standard tramite file header, e` pero` tenuto a comportarsi in un
certo modo quando li utilizzi tramite direttiva #include.
Poi in realta` bisognerebbe vedere se hai istallato correttamente il
pacchetto.
Paolo

 ha scritto nel messaggio
news:9129ds$6hu$1...@nread1.inwind.it...
Può trattarsi solo di un errore nell'installazione (a patto che tu abbia
installato il compilatore in dotazione con MDK 7.1). Il compilatore "di
serie" di Linux fornisce i file "iostream.h" e "iostream".
Prova a vedere se almeno c'è "iostream.h".
Un dubbio... Hai installato la libstdc++ (in genere si installa a parte) ???
Domenico Barra

OK, sono anch'io un linuxiano, perň per questioni di coerenza direi
che č OT; fossi in te mi sposterei su it.comp.linux.development
(questa domanda forse č piů adatta su it.comp.linux.iniziare)
Anto
Newsgroup: it.comp.lang.c++
Titolo: TEdit dinamica

Come si fa con Borland C++ buider a creare campi edit dinamicamente, cioe'
data un form vuota il programma, a seconda dell'esigenza dell'utente, deve
creare un certo numero di campi edit.
Grazie
Lanfranco

creare un certo numero di campi edit.
Devi creare delle istanze delle classi TEdit
TEdit *t1, *t2;
t1 = new TEdit;
t1->Left = 100;        // posiziona il componente dove vuoi
t1->Top = 120;
t1->Text = "Testo";  // inserisci il testo che vuoi
t1->Parent = this;    // assegni il testo al form corrente
--
Stefano Tempesta
PC Service Software
http://www.tempesta.cc.st
s.tem...@pcs-online.it

Newsgroup: it.comp.lang.c++
Titolo: problemi con puntatori

Premetto, che è un po' che non uso il C++, per il semplice fatto che sono 
passato a java.
Adesso devo fare un lavoro di manutenzione su una libreria che avevo scritto 
parecchi anni fa.
La domanda è questa. Come passo un puntatore al costruttore di una classe ?
Il codice:
   class CHeader {
         const CXML *pXml;
         public:
             // Costruttori/Distruttori
             CHeader(const CXML *pHead)
                 :pXml(*pHead) {};
    }
E' corretto quello che ho scritto ? e se non volessi dichiarare pXML come const, 
ma semplicemente come un puntatore non const, come potrei fare ?
Grazie,
Obelix.

ma semplicemente come un puntatore non const, come potrei fare ?
Dichiarando il puntatore non-const.
p.s.: ma provare no, eh? :-)

Newsgroup: it.comp.lang.c++
Titolo: C++ chiama exe...

Salve a tutti,
Domanda banale ma per me difficile:
esiste un modo per avviare un'applicazione già fatta (magari un cpl di win)
così, semplicemente, chiamandola con un comando...
senza avere rapporti (famigliari) di nessun genere con questa
applicazione...
Solo avviarla...
Cercando ho trovato solamente una funzione DOS (che già conoscevo)...
system "path\file.exe";
Ma vi sembra normale che un applicazione Win32... chiami un'altra Win32...
passando per il COMMAND?
Oltre tutto è anti-estetico! :-)
Chi mi sa aiutare?
Ogni particolare aggiunto mi fa piacere... :-)
Fabio.

così, semplicemente, chiamandola con un comando...
Sei OT su questo gruppo, il gruppo giusto è it.comp.programmare.win32.
Comunque guarda la documentazione di ShellEecute. Per ulteriori
domande sull'argomento non postare più qui.
-- 
Marco Barisione (ICQ 84277092)

 ha scritto nel messaggio
news:8rgpoucm6rk5d61f7...@4ax.com...

Scusa, a te... e al gruppo...
Ma adesso mi è venuta la curiosità:
Qual'è l'argomento esatto di questo NG?
Esiste un sito associato a questo NG dove saperne di più...
GRAZIE (anche per ShellExecute... che non so come si usa!)...

 Qual č l'argomento esatto di questo NG?
 
http://www.news.nic.it/manif/it.comp.lang.c++.txt
Newsgroup: it.comp.lang.c++
Titolo: algoritmo

Ciao a tutti voi
qualcuno conesce software per creare in modo semplice  la grafica dell' 
algoritmo
Attualmente uso word per creare i rombi ecc.
ma non è  il massimo


Infatti,word non è il massimo per nulla.
Prova Linux + kivio ad esempio :-)
-- 
Amarok 1.4.10 is airing: Metallica - Damage, Inc. [from: "Master Of 
Puppets"]

Ubo ha scritto:

Dia dovrebbe esserci anche su Windows:
http://dia-installer.sourceforge.net
Altrimenti puoi dare un'occhiata a graphviz. È un classico di linguaggio di
testo + compilazione, ma una volta che hai capito come funziona è facile da
modificare.
http://www.graphviz.org/

Ubo ha scritto:

Se intendi i diagrammi di flusso, nel pacchetto Office c'è Visio...
Newsgroup: it.comp.lang.c++
Titolo: aiuto!!!





Salve a tutti!!! 


Qualcuno saprebbe dirmi perchè il compilatore mi dice, in 
riferimento alla riga in 
rosso 
che non 
è possibile convertire un "void *" a "int *" cosa 
c'è che non và?????


 


 


GRAZIE, M@tteo


 


 


 


typedef int TAtomo;
typedef struct StCoda
{
int primo, ultimo, 
NMax;
TAtomo *e;
} Coda;


 


int inizializza (Coda *PC, int NElemMax)
{
PC->e=malloc(sizeof(TAtomo)*NElemMax);
PC->primo=-1;
PC->ultimo=-1;
PC->NMax=NElemMax;
}



...


Salve a tutti!!! 


Qualcuno saprebbe dirmi perchè il compilatore mi dice, in 
    riferimento alla riga in 
rosso 
che 
    non è possibile convertire un "void *" a "int *" 
    cosa c'è che non và?????


Prova 
con




PC->e=(TAtomo 
    *)malloc(sizeof(TAtomo)*NElemMax);



 PC->e=malloc(sizeof(TAtomo)*NElemMax);
Stai compilando in modalità C++ e quindi devi mettere il cast:
PC->e=(int *) malloc(sizeof(TAtomo)*NElemMax);
EMG

 }
Se programmi in C++ è meglio dimenticare malloc e free a meno di non esserne
obbligato a causa di strane circostanze. Usa piuttosto l'operatore "new" :
PC->e = new TAtomo[NElemMax];
e ricorda di usare
delete[] PC->e;
per cancellarlo.
ciao, Leo
-- 
    .--.     
   |o_o |    Cheap, Fast, Flexible - Linux users may pick any 3
   |:_/ |    
  //   \ \   
 (|     | )  
/'\_   _/`\                           Leopoldo Ghielmetti, EPFL-DMA ROSE
\___)=(___/

*" cosa c'=E8 che non v=E0?????
Non ho ben capito cosa dovrebbe fare il tuo codice,
ma sarebbe bene che usassi le librerie standard,
ed in particolare i containers vector, list o map,
a seconda delle esigenze.
-- 
Roberto Gerola
Email: 
robert...@penguinpowered.com
WWW: 
http://www.penguinpowered.com/~The_Cpp_Compass

...


Salve a tutti!!! 


Qualcuno saprebbe dirmi perchè il compilatore mi dice, in 
    riferimento alla riga in 
rosso 
che 
    non è possibile convertire un "void *" a "int *" 
    cosa c'è che non và?????


*" a "int *" cosa c'=E8 che non v=E0?????
Non postare in html, usa semplice testo in ascii standard (niente accentate),
questo e` lo standard in usenet. L'uso dell'html ed altro crea solo problemi poiche`
la maggior parte dei newsreader non e` in grado di interpretare le varie tag; inoltre
la cosa comporta un considerevole spreco di banda (solo il 5-10% dei caratteri che mi
arrivano sono utili, il resto e` robaccia).
Per quanto riguarda la tua domanda, la risposta (tiro ad indovinare perche`
il tuo post non e` leggibile) e` che devi "forzare la conversione"
con "(int*)puntatore". Infine usa l'operatore new al posto di malloc (che non
richiede tra l'altro alcuna conversione esplicita) e delete al posto di free
(mi pare che la duale di malloc sia free).
Paolo
-----------------------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------------------------
Newsgroup: it.comp.lang.c++
Titolo: Assembly vs. C++

Salve a tutti,
volevo sapere se in C++ e' possibile scendere a ring0 in un SO
come Win9x installando un trap gate nella IDT.
Programmando in Assembly, infatti, la cosa viene automatica,
e mi chiedevo se il C++ potesse fare altrettanto.
Voi che ne dite?
Ciao,
Matteo

 wrote in message
news:4yBt8.21991$SR5.5...@twister1.libero.it...

l'ISO C++ non contempla funzioni per lavorare a ring0, l'unico modo è
l'assembly e dato che già lo conosci e sai già farlo al max puoi
interfacciare codice C++ con codice ASM (guarda il manuale del tuo
compilatore per sapere come fare)
Ciao :)
Lawrence Oluyede
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

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

Ciao ho appena installato(semplicemente decompresso i file zip) il djgpp con
l'ambiente rhide.Perņ non riesco a compilare neanche un semplice programma,
il rhide mi segnala : "problem, cannot exec 'as': no such file or directory
(ENOENT)".
cosa devo fare?
dove si settano le directory di include e di lib?
Ciao e grazie in anticipo simone

(ENOENT)".
Credo che il compilatore non riesca a trovare il file djgpp.env, che
dovrebbe essere posizionato sulla directory principale del
compilatore. Per far si che esso venga trovato devi aggiungere una
riga all'autoexec.bat. Presumendo che tu abbia installato djgpp su
c:\djgpp dovresti scrivere
SET DJGPP=C:/DJGPP/DJGPP.ENV
Il Ghenio
-----------
LOVELY SARA
Dal lunedi'al venerdi'su Italia Uno alle 8:10
Non perdetevelo...
-----------
Newsgroup: it.comp.lang.c++
Titolo: scusate l'ignoranza

sono un ragazzo di 17 anni
frequento il 5° anno di liceo scientifico e vorrei preparare per l'esame
un'opera multimediale
su tutte le materie che sto studiando, cosa potrei riuscire a fare con il
visual c++ e in quanto tempo?
grazie.

 wrote in message
7uq594$dlj$1...@nslave1.tin.it...


 visual c++ e in quanto tempo?
Uhm... temo che sarebbe un po' lunghetto. Forse ti converrebbe
utilizzare un qualche strumento fatto apposta per lo sviluppo di opere
multimediali. Purtroppo non ti so consigliare titoli.
EMG

sono degli stronzi che non sanno apprezzare il futuro...
Non sarei cosi` rigoroso, il vero problema e` semmai dovuto al fatto
che un tale lavoro per essere apprezzato c'e` bisogno di un docente
che ne capisca le difficolta` e la portata. Non puoi dissertare di
logica con un docente di lettere, non e` detto che questi sia in grado
di capire se dici cose valide o fesserie.
Io consiglierei un lavoro che ha a che fare con una qualche materia di 
studio. L'opera multimediale potrebbe avere ad esempio come argomento
qualcosa che coinvolga lettere, filosofia, storia... che cioe` possa 
essere apprezzata principalmente per i suoi contenuti.
Visto il nuovo tipo di esame potrebbe essere un ulteriore stimolo...
Se poi c'e` un docente che capisca di multimedialita` tanto meglio!
Paolo
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

 visual c++ e in quanto tempo?
Boh! Dovresti riuscire a fare di tutto, ma X il tempo dipende. Con VC++ ci
sono moltissimi esempi di programmi multimediali, bisogna vedere quanto devi
modificarli.
--
Alessandro Monti

visual c++ e in quanto tempo?
Se per "un'opera multimediale su tutte le materie che sto studiando"
intendi un ipertesto multimediale allora uno strumento molto buono è
Toolbook.
_____________________________________________________
Francesco Trotta
http://space.tin.it/computer/ftrotta
elimina "x_" dal mio indirizzo per le risposte

 Toolbook.
a suo tempo utilizzai PowerPoint, non e' il massimo ma costa poco e se hai
office sei gia' a posto.
Occhio che e' molto semplice da usare e grazie a VBA si possono fare cose
carine e complesse a piacere!
Buona fortuna, Davide
/ - / - | - \ - \
Davide Piras
New (
pir...@engineer.com
)
Old (
pir...@iname.com
)
\ - \ - | - / - /


Verissimo, più che giusto, ineccepibile. Se ti diverte e ti piace fallo
tranquillamente, ma se speri che dei commissari smaronatissimi ti diano un
minimo di soddisfazione, lascia perdere. Mi ricordo che quando toccò a me fare
la maturità (ben 4 anni fa) preparammo dei programmi per l'esame e alcuni miei
compagni, non avendo il tempo di farlo funzionare, fecero solo delle belle
videate da cui si potevano scegliere variegate funzioni (era un programma che
simulava le gestione di un'assicurazione) che facevano finta di funzionare
dando un risultato a caso; ed erano pure preoccupati, ma quel pirla di
commissario non si accorse di nulla. Cose incredibili.
Newsgroup: it.comp.lang.c++
Titolo: Consigli sulle stringhe

Ciao, grazie per l'interessamento e scusa da subito se ti chiedo cose
stupide, io vorrei avere dei consigli su come realizzare routin che
analizzino stringhe come funzioni polinomi etc... grazie!
--
Automatic posted from 
ammi01.mailbridge.pronet.it
 [194.183.5.12]
via Mailgate Server - 
http://www.mailgate.org

analizzino stringhe come funzioni polinomi etc... grazie!
Se ho ben capito vuoi realizzare un piccolo parser?  Di fonti ce
ne sono a migliaia, ma prova ad esempio a cominciare dal capitolo
6 di Stroustrup, "The C++ Programming Language" 3a edizione; come
piccolo esempio di uso del C++, sviluppa un parser a discesa
recursiva e il resto delle funzionalita` necessarie ad un programma
che implementa una calcolatrice.
Alex
--
 ____    Alex Martelli, Bologna, Italia -- email: 
al...@magenta.com
 \SM/___                                 
http://magenta.com/~alex
  \/\bi/     You never know what is enough unless you know what
     \/          is more than enough.

Newsgroup: it.comp.lang.c++
Titolo: R: [?] - Come posso realizzare una finestra circolare.

 wrote in message
9asikg$e7c$1...@e3k.asi.ansaldo.it...

Newsgroup: it.comp.lang.c++
Titolo: help struct e affini

ciao
volevo scrivere un piccolo prog che inserite 7 parole, stampava le 
parole inserite e ne contava le occorrenze....
ma mi sono incasinato....
#include <stdio.h>
#include <stdlib.h>
#define MAX 7
typedef struct
{
   char stringa[MAX];
} Parola;
int main()
{
     int i,b,num_v = 0;
     char c;
   Parola parole[MAX],*temp;
  for(i=0; i<MAX; i++)
   {
      scanf("%s",parole[i].stringa);
   }
   //ciclo esterno sull'array di strutture
   for(i = 0; i < MAX; i++)
   {
      //conserviamo ogni volta il nuovo elemento dell'array
      temp = &parole[i];
         //ciclo interno conta le occorrenza dell'elemento in temp
         num_v = 0;
         for(b = 0; b < MAX; b++)
          {
             if(temp->stringa == parole[b].stringa)
             {
                 num_v++;
             }
          }
printf(" parole[%d] = %s - presente %d 
volte\n",i,parole[i].stringa,num_v);
   }
   system("PAUSE");	
   return 0;
}
grazie

 } Parola;
In C++ non è necessario usare un typedef, in questo caso.
Max

Max M. ha scritto:

grazie mille!

 parole inserite e ne contava le occorrenze....
Non per essere scortese, ma il tuo è un programma C, non C++. Questo non è
il gruppo di discussione giusto.
Un programma in C++ che fa quello che vuoi tu potrebbe essere:
#include <string>
#include <map>
#include <vector>
#include <iostream>
using std::string;
using std::vector;
using std::map;
using std::cout;
using std::endl;
class ListaConto
{
public:
        void aggiungiParola( const string& parola );
        void resoconto() const;
private:
        map<string, int> parole;
};
void ListaConto::aggiungiParola( const string& parola )
{
        ++parole[parola];
}
void ListaConto::resoconto() const
{
        for( map<string, int>::const_iterator iter = parole.begin();
             iter != parole.end(); ++iter) {
                cout << iter->first << " ricorre " << iter->second;
                cout << (iter->second==1 ? " volta." : " volte.") << endl;
        }
}
int main( int argc, char* argv[] )
{
        const int max = 7;
        ListaConto lista;
        for(int i=0; i < max; ++i) {
                string parola;
                std::cin >> parola;
                lista.aggiungiParola(parola);
        }
        lista.resoconto();
        return 0;
}

Newsgroup: it.comp.lang.c++
Titolo: Differenza tra OnPaint e OnDraw

Che differenza tra queste due funzioni, perchè io ho un lilibro che parla di
MFC che si riferisce a OnPaint , mentre negli altri che parlano di visualc++
si riferiscono a OnDraw.
Può centrare qualcosa la documento/vista?
--
Bicio
ICQ 9822443
fb...@iol.it
-------------------------
Se sei di buon umore, non ti preoccupare, ti passerà.
----------------------------------------------------------------------------
------

Può centrare qualcosa la documento/vista?
Infatti: OnDraw e' una funzione virtuale della classe-vista, e viene
chiamata dal framework ogni volta che la vista deve disegnarsi (sia
per un paint, o sia per stampe e preview di stampa); OnPaint e' una
funzione di qualsiasi oggetto-finestra (CWnd e derivati), e
corrisponde al messaggio WM_PAINT di Windows.
Alex
Newsgroup: it.comp.lang.c++
Titolo: Data e ora in C++

Ciao a tutti!!!
è possibile stampare su video in c++ in interfaccia testuale l'ora e/o la
data correnti??
Grazie a tutti per la collaborazione

 la data correnti??
Si'.
In realta' non c'e' una sola funzione che stampa l'ora, ma alcune
funzioni che chiedono al sistema operativo la data e ora correnti in
formato numerico, altre che le scompongono in anno, mese,
giorno, ore, minuti, secondi, altre che formattano ed emettono in output
tali componenti.
I primi due problemi sono risolti dalle funzioni dichiarate nell'header
<ctime>, che sono poi le funzioni che in C erano dichiarate nell'header
<time.h>.
Il terzo problema e' risolto dalla funzione 'printf' (dichiarata
in <stdio.h>) o dagli stream (dichiarati in <iostream>).
-- 
	Carlo Milanesi
 
http://digilander.libero.it/carlmila

 wrote in message
news:20031122230313.7edb3095...@libero.it...

Newsgroup: it.comp.lang.c++
Titolo: Scusate l'ignoranza!

Dovrei creare una funzione che prende in ingresso le coordinate di un punto
in 3 dimensioni, la volocità del punto e due angoli alfa e beta che ne
identificano la direzione.
Come posso implementare un metodo che mi calcoli le coordinate del punto
dopo un istante di tempo????
Il prototipo della funzione credo sia questo:
double coordinate(double x, double y, double z, double vel, double alfa,
double beta);
Come posso implementarlo?
Un'altra cosa, devo creare una funzione che prende in ingresso due punti in
3 dimensioni e ritorna i due angoli alfa e beta. Il prototipo di questa
funzione com'è?
Cosa deve ritornare?
????? angoli(double x1, double y1, double z1, double x2, double y2, double
z2);
Grazie.


A parte il fatto che converrebbe avere entita' (classi) come:
- punto3D
- vettore3D
etc...
un prototipo semplice puo' essere questo:
void coefficienti_retta_3D(double x1, double y1, double z1, double x2, 
double y2, double z2, double& alpha, double& beta);
Da usare cosi':
double x1, y1, z1;
double x2, y2, z2;
double alpha, beta;
coefficienti_retta_3D(x1, y1, z1, x2, y2, z2, alpha, beta);
//alpha e beta adesso contengono i valori richiesti.
Trattasi di banale passaggio di parametri per riferimento, leggasi un 
qualsiasi libro entry-level sulla programmazione.
-- 
Roal Zanazzi
Newsgroup: it.comp.lang.c++
Titolo: C++ BUILDER <VS.> MFC

Domandina su cui si può aprire un dibattito:
Il favoloso Borland c++ builder- così piacevole da utilizzare
per l'ambiente RAD- ha le stesse potenzialità dell'alternativa
Microsoft, che fa uso delle tanto decantate MFC?
In altre parole, quale dei due è più professionale secondo voi??
Grazie- aspetto numerose opinioni!
Francesco
gi...@tin.it

In altre parole, quale dei due è più professionale secondo voi??
Non è una questione di professionalità. E' una questione di "filosofie" -
passami il termine - completamente diverse. L'ambiente RAD presuppone che il
programmatore si sieda davanti al terminale e inizi a sviluppare
praticamente da subito, sfruttando al massimo le potenzialità dell'ambiente
e di componenti già pronti.  Questo atteggiamento si riflette molto sul tipo
di applicazione che si deve scrivere: normalmente per applicazioni medio -
piccole, di complessità relativamente bassa e fortemente prototipizzate, è
una metodologia vincente. Tuttavia, un progetto di grosse dimensioni e di
elevata complessità necessita normalmente di una maggiore struttura che
deriva da una fase di design e, ancor prima, di analisi accurate e
dettagliate. In questi casi, lo sforzo maggiore non si paga solo in termini
di codifica pura, ma piuttosto nell'intero processo di ingegnerizzazione di
una soluzione. Il progetto diventa ben più che una serie di drag-&-drop,
property sheet e aggregazione di varie componenti precostituite, con
l'aggiunta di codice custom qua e là.
Poi non vanno dimenticate le assunzioni implicite, i vincoli e le scelte
nascoste che l'ambiente RAD fa al tuo posto. Spesso i programmatori le
ignorano, però potrebbero diventare rilevanti in determinati contesti. Tutto
dipende da questi, alla fine della fiera. Una valutazione a priori può
essere fuori luogo. In linea del tutto generale, direi che l'ambiente RAD
consente tempi di sviluppo più brevi, sottraendoti una buona parte del
controllo e imponendo una certa struttura (o per meglio dire una certa
mancanza di struttura). Un ambiente come quello di MFC lavora a un livello
di astrazione più basso, quindi fa meno assunzioni, è più "laborioso" da
usare (e più complesso da imparare), ma ti offre un maggior controllo. Il
resto sta a te.
Ciao
Andrea