你看,禁止了合成複製建構函式和合成賦值操作符,這些都是新學的.
其他的,就比較直觀了.
//graphRepresentAsAdjacentMatrix.h --graph header file.//Purpose://A graph represent as a adjacent matrix, this graph can't storage //weight value instead of true or false means m_matrix[i][j] is on or off.#include <iostream>#include <vector>class Graph{private:static const int Infinity = 1 << 30 ;static const int Nil = -1 ;typedef int Weight ;Weight * * m_matrix ;Weight * * m_distance ;int * * m_parent ;int m_rows ;int m_currentRows ;int m_min (int a, int partAOfB, int partBOfB) ;Graph (const Graph & graph) ;Graph & operator = (const Graph & graph) ;public:explicit Graph (unsigned int rows) ;bool importARowOfGraph (const std ::vector<int> & indexOfCurrentVertexAdjoinTo, const std ::vector<int> & weightOfCurrentVertexAdjoinTo) ;void floydWarshall (void) ;void printPathBetweenTwoVertexes (int startVertex, int endVertex) ;~Graph (void) ;} ;