########### CODE SOURCE avec COMMENTAIRES DE DEBUG ##################### main () { SqrMatrix m1(3,3); *** debug : Matrix (3,3) constructed ; instances: 1 --- MemBlk debug : constructed [36] --- MemBlk debug : allocated, refs = 1, blocks: 1 cout << " M = " << m1 << endl; M = 1 2 3 4 5 6 7 8 0 cout << " M^3 = " << (m1^3) << endl; *** debug : Matrix (3,3) constructed ; instances: 2 --- MemBlk debug : copy-constructed, refs = 2 *** debug : Matrix (3,3) constructed ; instances: 3 --- MemBlk debug : constructed [36] --- MemBlk debug : allocated, refs = 1, blocks: 2 *** debug : Matrix (3,3) touched --- MemBlk debug : cloned *** debug : Matrix (3,3) constructed ; instances: 4 --- MemBlk debug : copy-constructed, refs = 2 *** debug : Matrix (3,3) touched --- MemBlk debug : freed, refs = 1 --- MemBlk debug : allocated, refs = 1, blocks: 3 --- MemBlk debug : cloned --- MemBlk debug : freed, blocks: 2 --- MemBlk debug : destroyed [36] *** debug : Matrix (3,3) deleted ; instances: 3 *** debug : Matrix (3,3) constructed ; instances: 4 --- MemBlk debug : copy-constructed, refs = 3 *** debug : Matrix (3,3) touched --- MemBlk debug : freed, refs = 2 --- MemBlk debug : allocated, refs = 1, blocks: 3 --- MemBlk debug : cloned --- MemBlk debug : freed, refs = 1 --- MemBlk debug : destroyed [36] *** debug : Matrix (3,3) deleted ; instances: 3 *** debug : Matrix (3,3) constructed ; instances: 4 --- MemBlk debug : copy-constructed, refs = 2 *** debug : Matrix (3,3) touched --- MemBlk debug : freed, refs = 1 --- MemBlk debug : allocated, refs = 1, blocks: 4 --- MemBlk debug : cloned --- MemBlk debug : freed, blocks: 3 --- MemBlk debug : destroyed [36] *** debug : Matrix (3,3) deleted ; instances: 3 --- MemBlk debug : freed, blocks: 2 --- MemBlk debug : copied, refs = 2 --- MemBlk debug : freed, refs = 1 --- MemBlk debug : destroyed [36] *** debug : Matrix (3,3) deleted ; instances: 2 *** debug : Matrix (3,3) constructed ; instances: 3 --- MemBlk debug : copy-constructed, refs = 2 --- MemBlk debug : freed, refs = 1 --- MemBlk debug : destroyed [36] *** debug : Matrix (3,3) deleted ; instances: 2 M^3 = 5392 6434 2670 11026 13157 5460 1666 1988 825 return 0; } --- MemBlk debug : freed, blocks: 1 --- MemBlk debug : destroyed [36] *** debug : Matrix (3,3) deleted ; instances: 1 --- MemBlk debug : freed, blocks: 0 --- MemBlk debug : destroyed [36] *** debug : Matrix (3,3) deleted ; instances: 0