Я должен перевести исходный код C ++ на Java. К сожалению, меня никогда не учили C ++. Большинство из них довольно просты, но я мог бы немного помочь.
void DepthFirstSearch(HeadNode *V[MaxCities], bool *Visited, int Start)
{
//display each cited as it is visited
cout << endl << V[Start]->City;
//mark city as visited
Visited[Start] = true;
//continue depth first search
CityNode *C;
int NewStart;
C = V[Start]->FirstCity;
while(C != NULL){
NewStart = C->Vertex;
if(!Visited[NewStart])
DepthFirstSearch(V,Visited,NewStart);
C = C->NextCity;
}//end while
}//end DepthFirstSearch
Линия:
cout << end1 << V[Start]->City;
это особенно сбивает с толку. Любая помощь?
HeadNode *V[MaxCities]
массив указателей, указывающих на объекты HeadNode В Java это так же, как массив.
Чтобы получить значения или методы из указателя на объекты, вы используете ->
оператор.
В Java это своего рода .
опртор из предметов.
cout
является выходным потоком, который пишет в стандартный вывод, в Java это будет System.out.print ()
<<
Оператор используется для записи в этот поток.
endl
как символы новой строки \r\n
линия кут << end1 << V [Пуск] -> Город; это особенно сбивает с толку.
Любая помощь?
будет переводить на:
System.out.print("\r\n" + v[Start].City);
Есть руководства, доступные онлайн, ища Google для «cpp to java — [function]» (в этом случае [function] заменяется на «cout».)