Avatar billede dennism Nybegynder
15. februar 2004 - 23:07 Der er 17 kommentarer og
1 løsning

Cpp; Vejledning

Jeg sidder og vil igang med at lave programmer, og har valgt sproget cpp.
Jeg er efterhånden ret ok til PHP/mySQL, og har dermed også erfaring for HTML og JavaScript. Har også programmeret programmer til min TI-lommeregner.
Jeg har før snuset en lille bid til cpp, men er aldrig rigtigt kommet i gang.
Jeg sidder nu med en bog der hedder "C++" som er skrevet af "Kris Jamsa" (udgivet af IDG-forlaget), og har derudover compileren dev-cpp installeret.

Jeg har en "drøm" om engang at kunne lave windows-applikationer.
Hvad skal jeg gøre nu? Skal jeg læse bogen, og starte stille og roligt op med MS-DOS applikationer, og så arbejde med op ad? Eller hvordan anbefaler I at jeg griber det an?
Avatar billede arne_v Ekspert
15. februar 2004 - 23:15 #1
Ja - jeg vil helt klart anbefale at du starter med console applikationer
og venter lidt med GUI applikationer.

Kort C++ tutorial:
  http://www.cplusplus.com/doc/tutorial/

Win32 GUI tutorial:
  http://www.winprog.org/tutorial/
Avatar billede dennism Nybegynder
15. februar 2004 - 23:17 #2
Bør jeg ligge bogen fra mig, og benytte artikler på nettet i stedet!?
Avatar billede arne_v Ekspert
15. februar 2004 - 23:20 #3
Nej.

En bog vil normalt altid være bedre end artikler på nettet.

Men sommetider kan det være godt at have lidt supplerende.

Og lidt bladren på det sidste link bør overbevise dig om at du lige skal
have styr på syntaxen inden den står på Win32 GUI.
Avatar billede 2c Nybegynder
15. februar 2004 - 23:29 #4
Der har lige været en tråd om gode bøger til at lære c++. Det kan være der er nogen gode anbefalinger der.

http://www.eksperten.dk/spm/456614
Avatar billede dennism Nybegynder
15. februar 2004 - 23:31 #5
Jeg sidder nu og læser i bogen. Den aller først kode i bogen er:

#include <iostream>
#include <stdlib.h>

void main(void)
    {
        cout << "Tekst";
    }

Kan nogen fortælle mig, hvorfor min compiler ikke vil godkende denne kode?
Der burde da ik være nogle problemer, når det står i bogen.
Avatar billede 2c Nybegynder
15. februar 2004 - 23:40 #6
Hvad får du af fejl ?
Avatar billede bertelbrander Novice
15. februar 2004 - 23:40 #7
1:
#include <iostream>
#include <stdlib.h>
using namespace std;
void main(void)
    {
        cout << "Tekst";
    }

2:
#include <iostream>
#include <stdlib.h>

void main(void)
    {
        std::cout << "Tekst";
    }

Og helt perfekt:

#include <iostream>
#include <stdlib.h>

int main(void)
    {
        std::cout << "Tekst" << std::endl;
        return 0;
    }
Avatar billede dennism Nybegynder
15. februar 2004 - 23:42 #8
Hvorfor gemmengår de noget i bogen, som ikke er korrekt?
Det vil da være "umuligt" at forsøge at lære noget af en bog, hvis kode ikke er up2date..
Avatar billede dennism Nybegynder
15. februar 2004 - 23:43 #9
Hvad gør "using namespace std;" iøvrigt?
Avatar billede bertelbrander Novice
15. februar 2004 - 23:44 #10
Hvor gammel er bogen? Namespace (ogder med std::) er forholdsvist nyt.
På den anden side brugte man iostream.h i "gamle" dage.

Det bør iøvrigt være:
#include <cstdlib>
Avatar billede bertelbrander Novice
15. februar 2004 - 23:46 #11
I nyere C++ har man puttet alle standard definitioner ind i et namespace der hedder std.
Så enten må man "inkludere" alt fra dette namespace (eller de dele man ønsker) eller skrive std:: foran.
Hvis ikke bogen fortæller om namespace er den for gammel.
Avatar billede dennism Nybegynder
15. februar 2004 - 23:49 #12
Den er desværre fra 1996 :(
Avatar billede bertelbrander Novice
15. februar 2004 - 23:49 #13
Man kunne lave det sådan, bemærk at cstdlib/stdlib.h ikke er nødvendig:

#include <iostream>

using std::cout;
using std::endl;

int main(void)
{
    cout << "Tekst" << endl;
    return 0;
}

Men i starten vil det nok være lettest at bruge "using namespace std;" og glemme alt om namespace til senere.
Avatar billede bertelbrander Novice
15. februar 2004 - 23:51 #14
Hvis den er fra 96 er den lidt gammel. Hvis ellers bogen er god ville jeg læse den som en begyndelse, og så gå videre til noget bedre når du har lidt styr på det grundlæggende.
Avatar billede dennism Nybegynder
15. februar 2004 - 23:54 #15
Synes ik jeg vil tage fat i noget som er "gammeldags". Hvis bør jeg læse i stedet?
Avatar billede bertelbrander Novice
15. februar 2004 - 23:58 #16
Det ved jeg ikke, jeg har aldrig rigtigt læst en bog om C++, kun dele af Bjarne S's bog om C++, og den er ikke for begyndere.
Prøv at kikke lidt tilbage i kategorien, spørgsmålet har været oppe mange gange.

Du kunne også gå en tur på biblioteket.
Avatar billede bertelbrander Novice
16. februar 2004 - 00:17 #17
I de nyere C++ er der kommet nogle tilføjelser til sproget som gør det til et stærkere sprog, der er ikke noget at det "gamle" der ikke kan bruges mere, det grundlæggende er stadig det samme.
Avatar billede arne_v Ekspert
16. februar 2004 - 07:36 #18
Umiddelbart vil jeg tro, at using namespace std skulle få alle
eksemplerne i din bog til at virke. Der er så nok også lidt andre
nyere C++ features som mangler, men dem kan du lære hen af vejen.

Jeg synes ikke at det skal være afgørende for om du bruger den
bog eller ej. Det må være bogens pædagogik. Hvis den kan lære dig
at bruge pointere, referencer, new/delete, constructor/destructor,
virtual etc. på en gode måde - så brug den. Hvis du lærer god
C++, så vil namespaces, STL og den andre nye tilføjelser til C++ være
piece of cake.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester