innholdsfortegnelseFAQ for [no.it.programmering.c++]

2.2 Noe er feil med [iostream.h] eller noe slikt?

Etter standardiseringen av C++ sent i 1997 er [iostream.h] erstattet av [iostream]. Og tilsvarende for andre headere. Headere fra C-biblioteket ble wrappet i tilsvarende C++ bibliotek headere med prefiks “c”, f.eks., C-bibliotek headeren [assert.h] ble wrappet av C++ bibliotek [cassert].

Dette er et standard C++ “Hallo, verden!” program:

    #include <iostream>
    int main()
    {
        std::cout << "Hallo, verden!" << std::endl;
    }
  1. Ingen “.h” etter “iostream”.
     
  2. I følge standarden, §3.6.1/2, skal main ha returtype int, men det finnes kompilatorer (f.eks. Visual C++) som feilaktig aksepterer void. Se også [http://www.research.att.com/~bs/bs_faq2.html#void-main], der Bjarne Stroustrup svarer på dette. Bjarne Stroustrup laget språket.
     
  3. main behøver ikke å eksplisitt returnere noen verdi (den returnerer da 0), men enkelte eldre kompilatorer kan feilaktig kreve en eksplisitt return.
     
  4. Du kan bruke de symbolske navnene EXIT_SUCCESS og EXIT_FAILURE for de to verdiene som er standard som returverdier fra main Disse navnene blir dratt inn av de fleste headerne. De er definert i [cstdlib].
     
  5. cout, endl osv. er i navnerommet std. Som et alternativ til å kvalifisere navnene med std:: kan du bruke et using namespace std; direktiv.