WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   C++ Anfang (http://www.wcm.at/forum/showthread.php?t=204772)

DCS 27.12.2006 15:57

erstmal habe ich gehört, das schleifen nur gewissen Rahmen haben dürfen.... 255 Anweisungen ???
Das hiesse ja, das das Spiel sehr sehr klein sein müsste...ginge also nicht, also doch sowas wie Goto, da ich aber so einen Befehl unter C garnicht kennengelernt hatte, gibts den wohl auch nicht....

www.codeproject.com ist englisch, wie soll einer das Begreifen, wenn er in seiner Muttersprache schon nix kapiert ???

ja, und ein paar Zeilen wie z.b.

cout > hallo welt;

könnte man erläutern...

wie man variablen einbindet, wo sie her kommen, wo sie hingehen, wie man sie initialisiert und so weiter...

Klar lernt man dadurch, entweder hier, wo man vielleicht sogar per PM nachfragen darf, oder hier posten darf, oder man liest das Buch; Ein Buch hat ein ganz grosses Problem !! Man muss sich erstmal in die Denkensweise des Autoren versetzen, um seine Schreibweise zu verstehen, und Nachfragen geht schon mal garnicht....

WCM hab ich hier nicht, gibts wahrscheinlich auch garnicht in Deutschland...

Wie Programme funktionieren, weiss ich schon, die meisten, die die Sprache lernen wollen, sicherlich auch:
Das Problem ist, C/c++ zu lernen, da es viele komplizierte und völlig unlogische schreibweisen hat.......die man hier aber als PRO gerne mal erläutert...

Vielleicht ist es tatsächlich besser, der Beginner postet die Frage, der Pro beantwortet diese, und schreibt eventuell noch ein zwei kurze Listings, um den Einsatz des Programmziels zu erläutern....

Ich für meinen Teil möchte wissen:
was sind...
- objekte
- klassen
- methoden

und womit lassen die sich vergleichen und welcher Alltägliche Einsatz sich damit realisieren...??


Mfg, DCS

Biri 27.12.2006 18:21

hi,

schleifen dürfen in c++ (und jeder modernen programmiersprache) beliebig viele anweisungen enthalten. Jede moderne Hochsprache hat hier keine Einschränkungen.

goto gibt es unter c und c++, die empfehlung ist jedoch, diesen NICHT zu verwenden, weil das zu sog. spaghetticode führt.

sorry, aber programmieren ohne englischkenntnisse ist imho. fast unmöglich. msdn hilfe ist nun mal englisch - die schlüsselwörter der programmiersprachen auch.

aufgrund deiner fragen denke ich, dass du dir mal ein buch "objektorierntierte programmierung" kaufen solltest. Dort werden alle deine fragen behandelt. Ich hab schon einige programmierbücher gelesen und es stimmt nicht, dass man sich in die denkweise des autors versetzen muss, um das buch zu verstehen.
Wenn doch, dann ist es ein schlechtes buch und du solltest dich nach einen anderen umsehen.

c++ hat keine unlogsiche schreibweise - im gegenteil - jede programmiersprache ist absolut logisch und schlüssig.

Objekte: Die objektorientierte Programmierung betrachtet alles als Objekt. Beispiel: Eine Person ist ein Objekt. Das Objekt Person hat Eigenschaften wie z.B. Alter, Haarfarbe usw..
Weiters hat das Objekt Methoden - das sind die Funktionen, die etwas tun wie z.B. das Objekt Person hat die Methoden: sprechen, fortbewegen, ...

Eine Klasse ist grob betrachtet eine Möglichkeit, um der Programmiersprache zu sagen, was als Objekt betrachtet werden soll.

Soll heißen: In C++ definierst du eine Klasse "Person".
class Person
{
int alter;
char[] haarfarbe;

bool tuWas();
bool toNochWas();
}

Von dieser Klasse kannst du an anderer Stelle im Programm Instanzen erzeugen. Eine Instaz ist dann eine konkrete Person (die Klasse ist eigenltich nur eine Vorlage, wie eine Person aussehen soll).

Du siehst schon - hier wird das ganze erklären sehr komplilziert, weil ich ja nicht weiß, was du verstehst und wo du nachfragen möchtest.

Gerade deshalb erachte ich es ja als sinnvoll, ein buch zu kaufen und bei Fragen dann diese hier im Forum zu stellen.

Viel spaß noch bei programmieren lernen!

fg
hannes

delphirocks 27.12.2006 20:09

Ich bin mir allerdings nicht ganz sicher, ob wir hier verarscht werden sollen oder nicht.
Die Fragen sehen zumindest ein wenig danach aus.
:confused:

harry3 27.12.2006 21:44

Ich habe hier den Eindruck, dass zwischen C und C++ nicht unterschieden wird. Es handelt sich hier um 2 verschiedene Sprachen. C++ Compiler können zwar C Code kompilieren, aber man sollte C und C++ nicht vermischen, sondern als 2 unterschiedliche Sprachen betrachten(was sie ja auch sind).

Der größte Einsatzbereich von C sind heutzutage kleine Prozessoren(z.B. die Software fürs Auto ist zum Teil in C geschrieben).
Aber natürlich gibt es auch normale Windows Software die mit C programmiert wurde(mittels WinAPI), wenn auch nur selten. In der Softwaresparte liegt der Haupteinsatzbereich von C++, sei es nun AutoCad oder Word, die meisten Windows Programme sind mit C++ programmiert.


Zum Anfangen würde ich eher C empfehlen. Man darf nicht gleich ein 3d Spiel vor Augen haben, sondern man muss sich halt mal durch die Grundlagen durchkämpfen, also Schleifen, Abfragen mittels if, else, switch, Arrays(Felder), Listen, Bäume,...

Erst dann kann man sinnvolle, einfache Programme schreiben.

Man kann zwar von Anfang an probieren, sich mit Klassen zu probieren, aber wenn die Grundlagen fehlen kommt man nicht weit.

Zum C lernen braucht man kein Buch, es genügen Online Tutorials wie z.B.:
http://www.fh-augsburg.de/informatik...utorial/cyris/
http://www.pronix.de/

Will man tiefer in die Materie eintauchen, führt natürlich kein Weg an Büchern vorbei.

Mit C kann man schon sehr viel machen, sogar Windows Programme sind damit möglich(WinAPI).

Mit C/C++ wird man wenigstens einmal gezwungen, genau zu arbeiten. So Wischi Waschi Dinge a la PHP oder Basic sind damit nicht möglich.
Auch ein goto ist schrecklich anzusehen!

Spielschleifen sollte man, wie der Name schon sagt, mit Schleifen lösen,z.B.:
PHP-Code:

//Auszug aus einem 4 Gewinnt Spiel:
    
while(ende==0)
    {
        
fkt_init_spielfeld();
        
werbeginnt=fkt_vgewinnt(werbeginnt);
        
ende=fkt_ende();
    } 

Grüße,
Harri

DCS 27.12.2006 21:50

nein verar*** ist das nicht...
allerdings ist das schon gut beschrieben...

Schade, das man nicht fragen darf, ohne gleich hinterhergerufen zu bekommen, "da will uns einer verar****"
Schade, das man immer alles sofort begreifen muss...

ich hab 3 oder 4 Bücher durch, kann mir aber einen Zweck aus diesen Begriffen nicht schlüssig machen...


Insgesamt glaube ich, das man hier wohl schneller lernen kann...


was ich auch grad noch lese, und dies für mich schwierig war:
Eine Variable kann eine Variable sein, oder eine Funktion....hmmm...

Wobei Funktionen als eine art "subroutine" angesehen werden darf ????

Tarjan 27.12.2006 23:40

Ich würde gleich mit C++ oder C# anfangen. Hier lernst Du wenigstens gleich objektorientiert zu denken. Mit C lernst Du nur prozedural zu programmieren und tust Dir noch schwerer beim Umstieg auf Objektorientiert.

Zum Einstig lese ein Buch über Objektorientierung durch, ohne programmiertechnischen Hintergrund. Einfach um das Dogam der Objektorientierung zu begreifen.

Und dann, programmieren, programmieren, programmieren. Wobei Du jemanden kennen solltest der Dir danach die Programme um die Ohren schmeist. Klingt zwar hart, ist aber die Beste Methode zu lernen.

DCS 28.12.2006 03:44

Zitat:

Original geschrieben von Tarjan
Wobei Du jemanden kennen solltest der Dir danach die Programme um die Ohren schmeist.

Bei mir scheiterts dann daran....



Ich hatte mal eine Email an den Schreiberling eines Buches geschrieben, ich hätte mit so einigem Problem, das überhaupt sprachlich zu verstehen...
...ein hin und her...
dann schliesslich sagte der mal sowas ähnliches wie...
"bei objektorientiertem Programmieren gehts nicht mehr Zeile um Zeile, sondern um Objekte, die ihre Eigenschaften selbst kennen, und selbstständig ablaufen und sich beenden. Ungefähr so, als wüssten die Nudeln auf dem Herd in dem Topf Wasser von selbst, wann sie fertig sind"

Wie geht das denn ??
Wie kann ein Programm, dessen Programmzeile grad nicht bearbeitet wird, wissen, das es im Prinzip schon "fertig" ist??

Ich nerv' dann auch nicht mehr, wenn mir das einer erklären mag... ;)

delphirocks 28.12.2006 09:42

@DCS: Sorry, ich war mir da nicht so sicher. Man darf und soll natürlich fragen, wenn man was nicht versteht.

Die Art der Postings ließ bei mir da Zweifel aufkommen.

Bitte hiermit offiziell um Entschuldigung.
:bier:

DCS 28.12.2006 16:00

is ok, ich bin aber auch ein schwerer fall, der möglicherweise nervig rüberkommt...

was biri da erzählt hatte hat mich dinge aus dem Buch doch tatsächlich teilweisig schlüssig erscheinen lassen...und das ist gut !

oitt 28.12.2006 20:50

hey ich bin auch ein schwieriger fall in bezug auf C++ (falsche bücher?) aber habe mir heute 2 bücher über C-sharp gekauft und muss sagen das erste spricht mich gleich total an. Voll für Einsteiger und DAU-gerecht! schonmal einen computer etwas bedient? dann ab zum programmieren!
im ernst und ich meine das aufrichtig und nicht böse, auch wenn mich jetzt manche schief ansehen könnten.
"Visual C# 2005 - leicht, klar sofort" Markt und Technik.
Hab mir schon für gnome das monodevelop runtergeladen, aber werde dennoch erst das buch mit mikrigweich durcharbeiten. scheint viel einfacher als C++ und qt udgl zu sein!
ausserdem hab ich noch videoworkshops gefunden auf microsoft bzw einer adneren webseite.

bin endlich wieder voll im fieber. ein falsches (nicht auf dich zurechtgeschnittenes) buch kann da schon sehr schaden.

beim 2ten buch wirds dann schon zur sache gehen bei mir...aber ich für mich brauche halt eine easy daugerechte einführung wo mir alles vorgekaut wird....finde das einfach besser zum einstieg.

MfG.


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag