Jak zadeklarować funkcję, której typ zwracany jest?
Rozważ toC ++ 1y kod (PRZYKŁAD NA ŻYWO):
#include <iostream>
auto foo();
int main() {
std::cout << foo(); // ERROR!
}
auto foo() {
return 1234;
}
Kompilator (GCC 4.8.1) hojnie usuwa ten błąd:
main.cpp: W funkcji „int main ()”:
main.cpp: 8: 18: błąd: użycie „auto foo ()” przed odjęciem „auto”
std :: cout << foo ();
^
Jak mogę przekazać dalejfoo()
tutaj? A może bardziej odpowiednioczy można deklarować dalejfoo()
?
Próbowałem także skompilować kod, w którym próbowałem zadeklarowaćfoo()
w.h
plik, zdefiniowanyfoo()
tak jak powyżej.cpp
plik, w tym.h
w moimmain.cpp
plik zawierającyint main()
i wezwanie dofoo()
i zbudowałem je.
Wystąpił ten sam błąd.