Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657

    [C++] Allocare dinamicamente una matrice

    Come si alloca dinamicamente una matrice Bidimensionale?

  2. #2
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    Se non erro si deve fare cosi.

    codice:
    int *a = new int[10][5];

  3. #3
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Originariamente inviato da XWolverineX
    Se non erro si deve fare cosi.

    codice:
    int *a = new int[10][5];
    forse erri...
    mi da questo errore:

    assignment to `int *' from `int (*)[5]'

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se le righe e le colonne di interi richiesti sono

    codice:
    int righe = 10;
    int colonne = 5;
    per allocare

    codice:
    int i;
    
    int **p = new int *[righe];
    for (i=0; i<righe; i++) 
       p[i] = new int [colonne];

    per deallocare

    codice:
    int i;
    
    for (i=0; i<righe; i++) 
       delete [] p[i]; 
    delete [] p;

  5. #5
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    nn capisco perche utilizziate la vecchia sintassi C in C++, al posto della STL (<vector>)
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Pur essendo parte dello standard C++, le STL sono comunque librerie che mettono a disposizione nuovi tipi di dati basati sui template oltre che agli algoritmi standard che li riguardano.

    Non costituiscono di per se' una "nuova sintassi" rispetto a quella indicata ma un "altro modo" per gestire dati "complessi".

    L'uso di new e delete, non significa utilizzare la sintassi del C, di cui new e delete non sono operatori validi in quanto introdotti nel C++. Forse ti sei confuso con malloc e free ...

  7. #7
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    nn m isono confuso affatto, mi sto riferendo al fatto di gestire matrici tramite puntatori invece che tramite STL...
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh, ma i puntatori non rappresentano una caratteristica della "vecchia sintassi C". Sono attualissimi anche nella sintassi C++ ...

  9. #9
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    cosa fa malloc? è un operatore o una funzione?

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    malloc e free sono le funzioni di libreria standard di C per l'allocazione e la liberazione di memoria.

    In C++ sono sostituite dagli operatori new e delete

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.