Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
MSI FORGE GK600 TKL WIRELESS: switch lineari hot-swap, tripla connettività, display LCD e 5 strati di fonoassorbimento. Ottima in gaming, a 79,99 euro
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI porta un importante aggiornamento alla sua linea di gimbal camera tascabili con Osmo Pocket 4: sensore CMOS da 1 pollice rinnovato, gamma dinamica a 14 stop, profilo colore D-Log a 10 bit, slow motion a 4K/240fps e 107 GB di archiviazione integrata. Un prodotto pensato per i creator avanzati, ma che convince anche per l'uso quotidiano
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-06-2014, 17:02   #1
mistergks
Senior Member
 
L'Avatar di mistergks
 
Iscritto dal: Mar 2011
Messaggi: 1050
[c++] differenza pila stack o con lista

Qual'è la differenza tra una pila dichiarandola stack <type> mystack; e una pila ereditata da una lista?
Class pila : public list<type>
??
mistergks è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2014, 17:23   #2
mistergks
Senior Member
 
L'Avatar di mistergks
 
Iscritto dal: Mar 2011
Messaggi: 1050
Up
mistergks è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2014, 15:15   #3
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
La differenza è che la prima è uno stack propriamente detto ovvero struttura dati che ha un funzionamento di coda LIFO. La seconda è solo un nome di variabile, non è una struttura dati che si comporta come uno stack solo perchè si chiama "pila"! La classe list implementa una lista doppiamente linkata senza accessi diretti agli elementi, tra l'altro derivando pubblicamente esponi le funzionalità di list quindi non avresti un comportamento da stack...
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2014, 18:25   #4
WarDuck
Senior Member
 
L'Avatar di WarDuck
 
Iscritto dal: May 2001
Messaggi: 12966
Secondo la documentazione C++ std::stack funziona da wrapper per altri tipi di dato su cui implementare le classiche funzioni stack (push, pop):

http://www.cplusplus.com/reference/stack/stack/

Di fatto puoi implementare uno stack con una lista collegata o un vettore, infatti è quello che si fa generalmente.

Usando la classe stack sei sicuro che puoi usare solo ed esclusivamente le operazioni consentite per una struttura dati di quel tipo, e questo consente di minimizzare eventuali errori.

Ergo: se vuoi uno stack usa la classe stack.

Ultima modifica di WarDuck : 19-06-2014 alle 18:28.
WarDuck è offline   Rispondi citando il messaggio o parte di esso
Old 22-06-2014, 17:07   #5
mistergks
Senior Member
 
L'Avatar di mistergks
 
Iscritto dal: Mar 2011
Messaggi: 1050
Ho capito. Forse meglio ereditare private la list e non pubblic !
Comunque ho capito che mi hanno fatto implementare la classe coda a scopo didattico...
mistergks è offline   Rispondi citando il messaggio o parte di esso
Old 29-06-2014, 00:14   #6
mistergks
Senior Member
 
L'Avatar di mistergks
 
Iscritto dal: Mar 2011
Messaggi: 1050
[c++] differenza pila stack o con lista

Ma quello che non capisco è: se dichiaro una classe pila o coda.. Poi posso usarla come contenitore normalmente?

Tipo la classe:
Codice:
 
class miaPila{
....
};
Poi posso fare questo?:
Codice:
miaPila <int> pila;
mistergks è offline   Rispondi citando il messaggio o parte di esso
Old 29-06-2014, 11:50   #7
[Kendall]
Senior Member
 
L'Avatar di [Kendall]
 
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
Quote:
Originariamente inviato da mistergks Guarda i messaggi
Ma quello che non capisco è: se dichiaro una classe pila o coda.. Poi posso usarla come contenitore normalmente?

Tipo la classe:
Codice:
 
class miaPila{
....
};
Poi posso fare questo?:
Codice:
miaPila <int> pila;

Ti giro la domanda: visto come hai dichiarato la classe miaPila, in quale maniera potresti fare una dichiarazione come quella che hai scritto:

miaPila<int> pila;

???
[Kendall] è offline   Rispondi citando il messaggio o parte di esso
Old 29-06-2014, 12:27   #8
WarDuck
Senior Member
 
L'Avatar di WarDuck
 
Iscritto dal: May 2001
Messaggi: 12966
Sono d'accordo, forse sarebbe meglio prendere in mano un libro e seguire "teoria" ed esempi.

Essendo stato smanettone capisco bene che spesso è più divertente (a volte anche più istruttivo) mettersi a programmare direttamente, ma un minimo di costrutti sintattici servono, specie per rispondere alla tua domanda.

Cioè se vuoi fare X, almeno cerca di vedere su un libro se è spiegato come fare X.
WarDuck è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
Spento lo strumento LECP della sonda spa...
Voyager Technologies ha siglato un accor...
GoPro annuncia la linea MISSION 1 con tr...
Alcune varianti dei futuri Samsung Galax...
Il ridimensionamento di OnePlus in Europ...
Il cofondatore di Netflix ha lasciato l'...
ASUS porta in Italia il nuovo Zenbook Du...
Assassin's Creed: Black Flag Resynced, s...
Xbox Game Pass cambierà: tra le n...
I nuovi Surface Pro e Laptop sono vicini...
OnePlus ci riprova con la fascia bassa: ...
La Top 10 delle offerte Amazon del weeke...
XGIMI MoGo 2 Pro a 339€: Google TV con N...
Forum IT & Intelligence 2026: dall'A...
iPhone 16e per la prima volta a meno di ...
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: 23:33.


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