Dlaczego tak zapisany został kod?

0

Dziś spotkałem się z takim zapisem:

#include <string>
#include <iostream>
#include <ostream>
int main()
{
    std::string message ("Howdy\n");
    std::cout << message;
}

Czemu nie tak:

#include <iostream>

int main()
{
    std::cout << "Howdy";
    return 0;
}

I dlaczego w pierwszym przykładzie brak return 0?

0

Nie trzeba return edit. To sie tyczy tylko funacji main. A dlaczego tak? Bo ktoś chciał tak napisać

2

Bo C++ lubi takie "specjalne przypadki" :P Generalnie dobrą praktyką jest dawać return jeśli funkcja ma coś zwrócić.

0

Ma to jakieś głębsze programistyczne znaczenie, czy po prostu ktoś tak sobie napisał, aby było?

3

Tak to jest zdefiniowane w standardzie. Nie ma specjalnego znaczenia.

0

Pewnie chodzi o to, by było krótsze "Hello World" i programiści C++ mogli się napinać.

0

@kq zakładając, że idę do pracy i dostaję do napisania program wyświetlający tekst (taki przykład jedynie ;)) to poprawniej będzie napisać to z punktu standardu według napisanego kodu czy tego napisanego przeze mnie?

6

Bez znaczenia. Co prawda utworzenie dodatkowej zmiennej (a co za tym idzie alokacja i dealokacja pamięci, chyba, że masz SSO) w tym przypadku jest zbyteczne, ale nie zawsze.

Aha, ja bym jeszcze zganił za spację przed nawiasem - co to za dziwna praktyka?

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0