Implementa el mètode deleteUser a la classe CryptoApp. Aquest mètode ha de gestionar l’eliminació completa d’un usuari del sistema, assegurant que no quedin dades inconsistents ("orfes"). Utilitzeu l’arxiu CryptoApp.cpp i implementeu el mètode void CryptoApp::deleteUser(const string& name) situat al final de l’arxiu. Haureu de:
// PRE: name és el nom d'usuari a eliminar
// POST: Si l'usuari existeix, elimina l'usuari i tots els seus
// holdings associats de manera eficient. Si no, no fa res.
void CryptoApp::deleteUser(const string& name)
{
}
tar -cvf CryptoApp.tar CryptoApp.cpp
ESPECIFICACIONS:
Observacions:
Requisits de Rendiment (Important):
Nota: L’ordre dels elements en vec_holdings NO és rellevant i pot alterar-se durant l’esborrat. L’ordre en vec_users sí que s’ha de mantenir.
API DE CLASSES AUXILIARS
DOCUMENTACIÓ DE REFERÈNCIA DE LA CLASSE VECTOR
Utilitzi aquesta informació per seleccionar les operacions més adequades segons els requisits d’eficiència.
Entrada
Com a entrada hi haurà els comandaments de creació d’usuaris, actius i holdings, finalitzant amb la crida a deleteUser.
Sortida
El programa principal realitzarà una comprovació automàtica "Abans i Després":
Input
crearActiu BTC Bitcoin 8 crearActiu ETH Ethereum 18 crearPreu BTC 2025-01-01 50000 crearPreu ETH 2025-01-01 3000 crearUsuari Jaume jaume@test.com 1234 afegirEuros Jaume 10000 comprar Jaume BTC 0.1 comprar Jaume ETH 1 eliminarUsuari Jaume acabar
Output
======================================== Gestor de Carteres Cripto - CLI ======================================== Seleccioneu una opcio: 1. crearActiu - Donar d'alta un nou actiu 2. crearPreu - Afegir un preu diari a un actiu 3. mostrarActius - Llistar tots els actius 4. mostrarPreusActiu - Mostrar tots els preus d'un actiu 5. crearUsuari - Donar d'alta un nou usuari 6. mostrarUsuaris - Llistar tots els usuaris 7. crearAdreca - Afegir una nova adreça de wallet 8. mostrarAdrecesUsuari - Mostrar totes les adreces d'un usuari 9. afegirEuros - Afegir Euros al saldo d'un usuari 10. retirarEuros - Retirar Euros del saldo d'un usuari 11. comprar - Comprar un actiu per a un usuari 12. vendre - Vendre un actiu d'un usuari 13. preuActualActiu - Consultar l'ultim preu d'un actiu 14. carteraDeUsuari - consultar la cartera i el guany total d'un usuari 15. eliminarUsuari - Eliminar un usuari i les seves dades 0. acabar - Sortir del programa ---------------------------------------- Introduiu l'opcio desitjada: Actiu BTC creat correctament Actiu ETH creat correctament Preu de BTC a 2025-01-01 creat correctament Preu de ETH a 2025-01-01 creat correctament Usuari Jaume creat correctament 10000 Euros afegits correctament a l'usuari Jaume Compra de 0.1 unitats registrada per Jaume en BTC Compra de 1 unitats registrada per Jaume en ETH 1 3 0 0
Input
crearActiu BTC Bitcoin 8 crearActiu ETH Ethereum 18 crearPreu BTC 2025-01-01 50000 crearPreu ETH 2025-01-01 3000 crearUsuari Jaume jaume@test.com 1234 crearUsuari Maria maria@test.com 5678 afegirEuros Jaume 5000 afegirEuros Maria 100000 comprar Jaume BTC 0.1 comprar Maria ETH 2 eliminarUsuari Maria acabar
Output
======================================== Gestor de Carteres Cripto - CLI ======================================== Seleccioneu una opcio: 1. crearActiu - Donar d'alta un nou actiu 2. crearPreu - Afegir un preu diari a un actiu 3. mostrarActius - Llistar tots els actius 4. mostrarPreusActiu - Mostrar tots els preus d'un actiu 5. crearUsuari - Donar d'alta un nou usuari 6. mostrarUsuaris - Llistar tots els usuaris 7. crearAdreca - Afegir una nova adreça de wallet 8. mostrarAdrecesUsuari - Mostrar totes les adreces d'un usuari 9. afegirEuros - Afegir Euros al saldo d'un usuari 10. retirarEuros - Retirar Euros del saldo d'un usuari 11. comprar - Comprar un actiu per a un usuari 12. vendre - Vendre un actiu d'un usuari 13. preuActualActiu - Consultar l'ultim preu d'un actiu 14. carteraDeUsuari - consultar la cartera i el guany total d'un usuari 15. eliminarUsuari - Eliminar un usuari i les seves dades 0. acabar - Sortir del programa ---------------------------------------- Introduiu l'opcio desitjada: Actiu BTC creat correctament Actiu ETH creat correctament Preu de BTC a 2025-01-01 creat correctament Preu de ETH a 2025-01-01 creat correctament Usuari Jaume creat correctament Usuari Maria creat correctament 5000 Euros afegits correctament a l'usuari Jaume 100000 Euros afegits correctament a l'usuari Maria Compra de 0.1 unitats registrada per Jaume en BTC Compra de 2 unitats registrada per Maria en ETH 1 2 0 0
Input
crearActiu BTC Bitcoin 8 crearActiu ETH Ethereum 18 crearPreu BTC 2025-01-01 50000 crearPreu ETH 2025-01-01 3000 crearUsuari Jaume jaume@test.com 1234 afegirEuros Jaume 10000 comprar Jaume BTC 0.1 comprar Jaume ETH 1 eliminarUsuari Pepe acabar
Output
======================================== Gestor de Carteres Cripto - CLI ======================================== Seleccioneu una opcio: 1. crearActiu - Donar d'alta un nou actiu 2. crearPreu - Afegir un preu diari a un actiu 3. mostrarActius - Llistar tots els actius 4. mostrarPreusActiu - Mostrar tots els preus d'un actiu 5. crearUsuari - Donar d'alta un nou usuari 6. mostrarUsuaris - Llistar tots els usuaris 7. crearAdreca - Afegir una nova adreça de wallet 8. mostrarAdrecesUsuari - Mostrar totes les adreces d'un usuari 9. afegirEuros - Afegir Euros al saldo d'un usuari 10. retirarEuros - Retirar Euros del saldo d'un usuari 11. comprar - Comprar un actiu per a un usuari 12. vendre - Vendre un actiu d'un usuari 13. preuActualActiu - Consultar l'ultim preu d'un actiu 14. carteraDeUsuari - consultar la cartera i el guany total d'un usuari 15. eliminarUsuari - Eliminar un usuari i les seves dades 0. acabar - Sortir del programa ---------------------------------------- Introduiu l'opcio desitjada: Actiu BTC creat correctament Actiu ETH creat correctament Preu de BTC a 2025-01-01 creat correctament Preu de ETH a 2025-01-01 creat correctament Usuari Jaume creat correctament 10000 Euros afegits correctament a l'usuari Jaume Compra de 0.1 unitats registrada per Jaume en BTC Compra de 1 unitats registrada per Jaume en ETH 0 0 0 0
Input
crearActiu BTC Bitcoin 8 crearUsuari Buit buit@test.com 1111 eliminarUsuari Buit acabar
Output
======================================== Gestor de Carteres Cripto - CLI ======================================== Seleccioneu una opcio: 1. crearActiu - Donar d'alta un nou actiu 2. crearPreu - Afegir un preu diari a un actiu 3. mostrarActius - Llistar tots els actius 4. mostrarPreusActiu - Mostrar tots els preus d'un actiu 5. crearUsuari - Donar d'alta un nou usuari 6. mostrarUsuaris - Llistar tots els usuaris 7. crearAdreca - Afegir una nova adreça de wallet 8. mostrarAdrecesUsuari - Mostrar totes les adreces d'un usuari 9. afegirEuros - Afegir Euros al saldo d'un usuari 10. retirarEuros - Retirar Euros del saldo d'un usuari 11. comprar - Comprar un actiu per a un usuari 12. vendre - Vendre un actiu d'un usuari 13. preuActualActiu - Consultar l'ultim preu d'un actiu 14. carteraDeUsuari - consultar la cartera i el guany total d'un usuari 15. eliminarUsuari - Eliminar un usuari i les seves dades 0. acabar - Sortir del programa ---------------------------------------- Introduiu l'opcio desitjada: Actiu BTC creat correctament Usuari Buit creat correctament 1 0 0 0