Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Samsung rinnova la serie pieghevole di punta con Galaxy Z Fold8 Ultra: pannello interno da 8 pollici quasi senza piega, cerniera Flex Titanium, Snapdragon 8 Elite Gen 5 for Galaxy e batteria finalmente da 5.000 mAh. Prezzo italiano da 2.299 a 2.899 euro. Tra colorimetro, benchmark reali e giorni di uso quotidiano, ecco dove questo pieghevole convince e dove il nome Ultra fatica ancora a trovare piena giustificazione
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
La nuova Insta360 X6 introduce sensori Sony da 1/1.1" e un SoC Triple AI a 4nm. Analizziamo le riprese 8K, il primo Dolby Vision nativo a 10-bit nel settore sferico e l'innovativo flusso di lavoro diretto sulla futura versione 22 di DaVinci Resolve.
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Dopo due settimane trascorse al volante della Dacia Spring 2026 possiamo raccontarvi tutto, dalle novità di motore e batteria, fino ai consumi in tutti le situazioni, compresa l'autonomia reale ad alta velocità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-01-2002, 14:35   #1
aronne
Junior Member
 
Iscritto dal: Jan 2002
Messaggi: 2
overloading cin e cout

Ciao,

devo leggere i dati di una classe (che sono cognome,nome,data di nascita) da tastiera o da file.
Leggendo da tastiera vengono stampate delle stringhe (ad es.:"Nome : ").
Non voglio che queste stringhe vengano stampate se leggo da file.

Ho provato con

ifstream in;
....
if(cin==in) cout << ...

ma non funziona (ogni volta un risultato diverso).

come posso riuscire a distinguere se l'operatore di input ( o output) è riferito a lettura da tastiera o da file?

Grazie
aronne è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2002, 16:47   #2
Ikitt
Senior Member
 
Iscritto dal: Apr 2001
Messaggi: 178
Re: overloading cin e cout

Originariamente inviato da aronne
[...]
come posso riuscire a distinguere se l'operatore di input ( o output) è riferito a lettura da tastiera o da file?


Premesso che il mio (gia' scarso) C++ e' arrugginito...
Ma std::cin, std::cout e std::cerr non sono SEMPRE collegati al terminale? Se dei dati provengono da questi stream, e' ovvio che vengono o sono diretti al terminale...
no?
__________________
-----BEGIN GEEK CODE BLOCK----- Version: 3.1.2 GCS/M/E d- +:++ a-- C++>$ UL++ P
L++>+++ E---@ W+(-) N++ o? !K w O? M- V- PS PE Y+ PGP- t- 5? X+ R* tv++>+ b+@ DI>+
D+ G e>++ h!(+) r(--) !y? ------END GEEK CODE BLOCK------ [/size]
Ikitt è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2002, 19:33   #3
Poix81
Senior Member
 
L'Avatar di Poix81
 
Iscritto dal: Nov 2001
Città: Trento
Messaggi: 7095
Neache io soprrei come fare !!!

Ciao ci si sente per telefono.
Poix81 è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2002, 23:54   #4
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Ciao !
Cosa intendi dire con "ogni volta un risultato diverso" ? In teoria dovrebbe funzionare come hai scritto tu
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2002, 23:59   #5
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
in alternativa comunque puoi fare anche cosi':

if( cin.rdbuf() == in.rdbuf() ) ...

in pratica confronti i puntatori ai buffer, che ovviamente coincideranno se e solo e in e' cin stesso.
Un trucco un po' sporco , ma dovrebbe funzionare nel tuo caso
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2002, 14:14   #6
aronne
Junior Member
 
Iscritto dal: Jan 2002
Messaggi: 2
Grazie a tutti.
Problema risolto.

Funzionava anche con (cin==in) il problema è che quando lanciavo il programma e caricavo i dati ( con : main < input.d) sbagliavo. Il programma si aspettava di trovare tutti i dati in input.d e così non era ...

Grazie ancora.
aronne è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto Recensione Samsung Galaxy Z Fold8 Ultra: il pieg...
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli Due settimane con Dacia Spring 2026: novit&agrav...
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre AORUS GeForce RTX 5080 INFINITY WOOD 16G: una sc...
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
iPhone 18, un report conferma l'incremen...
Sonos ha in programma il lancio delle Ac...
Debutta Grok Bot, l'IA agentica diventa ...
iPhone Ultra, un accessorio conferma un'...
AstroRad funziona: superato il test luna...
Apple dichiara iPhone X obsoleto: stop d...
C'è un motivo per cui l'interfacc...
Il volo inaugurale dell'aereo elettrico ...
L'IA non rende tutte le imprese uguali. ...
Netflix cambia la strategia sul gaming: ...
Hyundai Kona elettrica: è ancora ...
Vogliono costruire un monumento per Elon...
Ring Intercom Audio crolla a 39,99€ su A...
La Francia blocca il divieto dei social ...
Trump citato in giudizio: chiesto lo sto...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:55.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v