Du bist nicht eingeloggt.

Login

Pass

Registrieren

Community
Szene & News
Locations
Impressum

Forum / Bits und Bytes

programmieren

<<< zurück   -1- -2- -3- -4- vorwärts >>>  
Polaris
Experte (offline)

Dabei seit 07.2006
1766 Beiträge
Geschrieben am: 16.03.2007 um 19:25 Uhr

Zitat von -mOsTwAnTeD-:

Zitat von Caarcrinolas:

Zitat von -mOsTwAnTeD-:

HI!
Ich hab hier so eine Komische Aufgabenstellung für ein c++ Programm gefunden. Wäre cool wenn jemand eine Lösung dafür findet. Es geht um Klassen und Konstruktoren.
void main()

An der Aufgabenstellung war anscheinend ein Ahnungsloser beteiligt

void main(); Das Mysterium ist nicht tot zu kriegen :(

was meinst du damit?

Ich glaube der der die aufgabe gestellt hat hats 10x so drauf wie du...

Eher 1/10 mal so viel.
Denn der Datentyp für die Main Funktion ist seit Weigkeiten nach dem C++ Standard "int" und nicht "void" und trotzdem gibt es immer noch so viele Compiler und User, die so einen beschissenen Quellcode verwenden (den du ohne Änderungen auch nicht mit einem standardkonformen Compiler compilieren kannst).

Patriotismus ist die Tugend der Bosheit! (Oscar Wilde)

-mOsTwAnTeD- - 35
Profi (offline)

Dabei seit 07.2006
677 Beiträge
Geschrieben am: 17.03.2007 um 17:14 Uhr

Zitat von Polaris:

HI!
Ich hab hier so eine Komische Aufgabenstellung für ein c++ Programm gefunden. Wäre cool wenn jemand eine Lösung dafür findet. Es geht um Klassen und Konstruktoren.
void main()

An der Aufgabenstellung war anscheinend ein Ahnungsloser beteiligt

void main(); Das Mysterium ist nicht tot zu kriegen :
was meinst du damit?

Ich glaube der der die aufgabe gestellt hat hats 10x so drauf wie du...
Eher 1/10 mal so viel.
Denn der Datentyp für die Main Funktion ist seit Weigkeiten nach dem C++ Standard "int" und nicht "void" und trotzdem gibt es immer noch so viele Compiler und User, die so einen beschissenen Quellcode verwenden (den du ohne Änderungen auch nicht mit einem standardkonformen Compiler compilieren kannst).

Er hat mir ja nur gesagt das ich das in die main funktion schreiben soll und da ich in der Schule (BS) fast nur void anstatt int genommen hab hab ich das hier auch reingeschrieben...

Ich scheiß auf deine Welt voller Arroganz und Geld!

Polaris
Experte (offline)

Dabei seit 07.2006
1766 Beiträge
Geschrieben am: 17.03.2007 um 20:25 Uhr

Zitat von -mOsTwAnTeD-:


Er hat mir ja nur gesagt das ich das in die main funktion schreiben soll und da ich in der Schule (BS) fast nur void anstatt int genommen hab hab ich das hier auch reingeschrieben...

ja, schon klar, trotzdem handelt dein Lehrer fahrlässig, wenn er euch nicht standardkonformen Code gibt ...
Ist er eigentlich ein ursprünglicher ANSI-Cler oder Javaler ?

Patriotismus ist die Tugend der Bosheit! (Oscar Wilde)

-mOsTwAnTeD- - 35
Profi (offline)

Dabei seit 07.2006
677 Beiträge
Geschrieben am: 18.03.2007 um 12:45 Uhr
Zuletzt editiert am: 18.03.2007 um 12:45 Uhr

Zitat von Polaris:

Zitat von -mOsTwAnTeD-:


Er hat mir ja nur gesagt das ich das in die main funktion schreiben soll und da ich in der Schule (BS) fast nur void anstatt int genommen hab hab ich das hier auch reingeschrieben...

ja, schon klar, trotzdem handelt dein Lehrer fahrlässig, wenn er euch nicht standardkonformen Code gibt ...
Ist er eigentlich ein ursprünglicher ANSI-Cler oder Javaler ?

Keine Ahnung!!
Der hat sowieso fast nichts drauf. z.B. in der KA gibt er uns einen Quellcode und sagt wir sollen die Fehler heraus finden. Jeder aus der Klasse hat ca. 20 Fehler gefunden der Lehrer aber nur 10 :-D

Ich scheiß auf deine Welt voller Arroganz und Geld!

-mOsTwAnTeD- - 35
Profi (offline)

Dabei seit 07.2006
677 Beiträge
Geschrieben am: 19.03.2007 um 07:38 Uhr

Zitat von Rifleman:

Die Aufgabe ist doch nicht schwer zu verstehen...
Du sollst eine Klasse CBruch schreiben, die eben einen Bruch darstellt.
Diese soll die Anforderungen erfüllen:
-Konstruktor mit 0 oder 2 Parametern aufrufbar
-eine Ausgabemethode
-diverse unäre und binäre Operatoren sollen überladen werden (und natürlich korrekt... (2/8 == 1/4) sollte auch true sein... )

Dann kannst du mir ja auch ein BSP machen für + oder -




Ich scheiß auf deine Welt voller Arroganz und Geld!

-mOsTwAnTeD- - 35
Profi (offline)

Dabei seit 07.2006
677 Beiträge
Geschrieben am: 19.03.2007 um 14:38 Uhr
Zuletzt editiert am: 19.03.2007 um 14:39 Uhr

hat niemand ein Beispiel oder eine Idee?

Ich scheiß auf deine Welt voller Arroganz und Geld!

Rifleman - 40
Experte (offline)

Dabei seit 09.2003
1540 Beiträge
Geschrieben am: 19.03.2007 um 16:20 Uhr
Zuletzt editiert am: 19.03.2007 um 17:07 Uhr

Ok, mal sehen....
Mal ein einfaches Beispiel für + als Memberfkt. Wie man leicht sieht geht das so nur, wenn auch 2 CBruch addiert werden, nicht z.b. 1+a...

Zitat:

class CBruch {
// .....
public:
const CBruch operator+ (const CBruch &op2) const {
return CBruch(*this) += op2;
}
//....
}

Das finde ich eine sehr elegante Lösung, hier wird der += wiederverwendet.
Man muss nur beachten, dass jetzt keiner der beiden Operanden verändert werden soll, man muss also auf einer Kopie arbeiten, die hier mir einem copy-constructor erzeugt wird. Dann darf natürlich auch keine Referenz zurückgegeben werden, wie bei +=.
Es wird const CBruch zurückgegeben, weil sonst z.B. (a+b) = c erlaubt wäre, was natürlich nonsense ist..

/edit: Ach ja...es soll auch (1 + a) gehen....das ist so nicht realisierbar. Das kannst du aber mit einer fkt Außerhalb der Klasse machen, die dann natürlich 2 Parameter hat. Je nachdem, wie du die Klasse implementiert hast muss diese als friend daklariert werden oder nicht...

Es sind die kleinen Dinge, die einen zum Wahnsinn treiben.

bartleby - 41
Profi (offline)

Dabei seit 01.2004
410 Beiträge
Geschrieben am: 20.03.2007 um 00:03 Uhr

Zitat von Polaris:

[
Denn der Datentyp für die Main Funktion ist seit Weigkeiten nach dem C++ Standard "int" und nicht
"void" und trotzdem gibt es immer noch so viele Compiler und User, die so einen beschissenen
Quellcode verwenden (den du ohne Änderungen auch nicht mit einem standardkonformen Compiler
compilieren kannst).


Naja, der Standard (C99 Final Draft) verbietet nicht explizit "void mai()". Deshalb wird dir auch jeder
Compiler den Code compilieren.
-mOsTwAnTeD- - 35
Profi (offline)

Dabei seit 07.2006
677 Beiträge
Geschrieben am: 22.03.2007 um 07:55 Uhr

Zitat von Rifleman:

Ok, mal sehen....
Mal ein einfaches Beispiel für + als Memberfkt. Wie man leicht sieht geht das so nur, wenn auch 2 CBruch addiert werden, nicht z.b. 1+a...

Zitat:

class CBruch {
// .....
public:
const CBruch operator+ (const CBruch &op2) const {
return CBruch(*this) += op2;
}
//....
}

Das finde ich eine sehr elegante Lösung, hier wird der += wiederverwendet.
Man muss nur beachten, dass jetzt keiner der beiden Operanden verändert werden soll, man muss also auf einer Kopie arbeiten, die hier mir einem copy-constructor erzeugt wird. Dann darf natürlich auch keine Referenz zurückgegeben werden, wie bei +=.
Es wird const CBruch zurückgegeben, weil sonst z.B. (a+b) = c erlaubt wäre, was natürlich nonsense ist..

/edit: Ach ja...es soll auch (1 + a) gehen....das ist so nicht realisierbar. Das kannst du aber mit einer fkt Außerhalb der Klasse machen, die dann natürlich 2 Parameter hat. Je nachdem, wie du die Klasse implementiert hast muss diese als friend daklariert werden oder nicht...


Als friend deklariert werden?

Ich scheiß auf deine Welt voller Arroganz und Geld!

Rifleman - 40
Experte (offline)

Dabei seit 09.2003
1540 Beiträge
Geschrieben am: 22.03.2007 um 14:31 Uhr

Ja...das ist nötig, wenn du von einer non-member-Funktion aus Zugriff auf private Elemente brauchst.
z.B. hier:
friend const CBruch operator+(const int, const CBruch&);

Wenn du aber hier wieder einen Konstruktor und die Memberfkt für += verwendest, die sowieso Zugriff hat, dann ist das nicht nötig.
z.B.:

Zitat:

const CBruch operator+(const int n, const CBruch &op2) {
return CBruch(n) += op2;
}


Es sind die kleinen Dinge, die einen zum Wahnsinn treiben.

Polaris
Experte (offline)

Dabei seit 07.2006
1766 Beiträge
Geschrieben am: 22.03.2007 um 16:47 Uhr

Zitat von bartleby:

Zitat von Polaris:

[
Denn der Datentyp für die Main Funktion ist seit Weigkeiten nach dem C++ Standard "int" und nicht
"void" und trotzdem gibt es immer noch so viele Compiler und User, die so einen beschissenen
Quellcode verwenden (den du ohne Änderungen auch nicht mit einem standardkonformen Compiler
compilieren kannst).


Naja, der Standard (C99 Final Draft) verbietet nicht explizit "void mai()". Deshalb wird dir auch jeder
Compiler den Code compilieren.

aber es ist trotzdem extrem hässlich ;-)

Patriotismus ist die Tugend der Bosheit! (Oscar Wilde)

-mOsTwAnTeD- - 35
Profi (offline)

Dabei seit 07.2006
677 Beiträge
Geschrieben am: 23.03.2007 um 09:28 Uhr

Zitat von Polaris:

Zitat von bartleby:

Zitat von Polaris:

[
Denn der Datentyp für die Main Funktion ist seit Weigkeiten nach dem C++ Standard "int" und nicht
"void" und trotzdem gibt es immer noch so viele Compiler und User, die so einen beschissenen
Quellcode verwenden (den du ohne Änderungen auch nicht mit einem standardkonformen Compiler
compilieren kannst).


Naja, der Standard (C99 Final Draft) verbietet nicht explizit "void mai()". Deshalb wird dir auch jeder
Compiler den Code compilieren.

aber es ist trotzdem extrem hässlich ;-)

is ja gut ich verwende void auch gar nicht mehr ;-)

Ich scheiß auf deine Welt voller Arroganz und Geld!

Garfild_96 - 29
Halbprofi (offline)

Dabei seit 11.2006
255 Beiträge
Geschrieben am: 26.05.2007 um 12:54 Uhr

Zitat von Black94:

kennt ihr n programm mit dem man am besten c++ oder java progammieren kann
sollte freeware sein und ohne viren etc.

annttttwwwwoorrttttteeeennn
bitte
kein spam


ich habe Visual Basic 2005 Express Edition und das ist eigentlich ganz gut aber des mit den cods ist ganz schön schwer
Polaris
Experte (offline)

Dabei seit 07.2006
1766 Beiträge
Geschrieben am: 26.05.2007 um 13:14 Uhr

was ist schwer?
Bei Fragen können wir dir gerne helfen ;-)

Patriotismus ist die Tugend der Bosheit! (Oscar Wilde)

cpriester - 43
Anfänger (offline)

Dabei seit 10.2005
7 Beiträge

Geschrieben am: 26.05.2007 um 14:44 Uhr

Wozu bitte braucht man als Anfaenger eclipse oder netbeans? Das ist doch eher verwirrend, mit den vielen Knoepfen. Wie waere es einfach mit Notepad oder einem aehnlich einfachem editor? btw. entwickeln Leute auch groessere Projekte in "einfachen" Editoren. Diese riesigen IDEs sind oft eher behinderlich.
Die Programme kann man dann leicht in der Konsole mit "javac Programmname" uebersetzen und mit "java Programmname" ausfuehren. Anfangs empfiehlt es sich wohl sowieso erstmal Konsolenprogramme zu schreiben, dann bietet sich das doch am ehesten an.
<<< zurück
 
-1- -2- -3- -4- vorwärts >>>
 

Forum / Bits und Bytes

(c) 1999 - 2026 team-ulm.de - all rights reserved - hosted by ibTEC Team-Ulm

- Presse - Blog - Historie - Partner - Nutzungsbedingungen - Datenschutzerklärung - Jugendschutz -