Forum Home Antworten

Mein ProfilCenter login | register | Suche | FAQ | forum home | im


» technoforum.de » Produktions- & DJ-Technik, Hard- & Software » brauche mal ein c++ beispiel » Antworten


Antworten
Login Name:
Passwort:
Smilie:       View Smilie Legend & More Smilies
Beitrag:

HTML ist an. Klick für Infos!
UBB Code™ ist an

 

Instant UBB Code™
Insert URL Hyperlink - UBB Code™   Insert Email Address - UBB Code™
Bold - UBB Code™   Italics - UBB Code™
Quote - UBB Code™   Code Tag - UBB Code™
List Start - UBB Code™   List Item - UBB Code™
List End - UBB Code™   Image - UBB Code™

Wie funktionieren UBB Codes ™?
Optionen


Deaktiviere Smilies


 


Thread!!!
requital
Usernummer # 4539
 - verfasst
hallo da ich mich leider mit c++ nicht sonderlich auskenne, bräuchte ich mal ein kleines beispiel programm.

es sollte eine zahl an eine klasse übergeben.
diese klasse soll dann die zahl verdoppeln und ausgeben.


danke schonmal im voraus!!!

[ 20.09.2003, 17:09: Beitrag editiert von: requital ]
 
smpx7
Usernummer # 3909
 - verfasst
Ich kann Dir da auch net sonderlich weiterhelfen, aber ich hab da nen Plan [Wink]

1. Programm
Erwartet die Eingabe einer Zahl
nach dieser Eingabe ruft es das Programm2 auf (glaube Befehl war 'system')
2. Programm
liest mit hilfe von args[1] die als Parameter übergebene Zahl, multipliziert sie mit 2 und gibt sie aus.

Ich glaub ich könnt das sogar gleich mal programmieren [Wink]
 
requital
Usernummer # 4539
 - verfasst
ja ne so wars eigentlich nicht gemeint.
es sollte eine klasse dafür benutzen die zahl zu verdoppeln!
hab mich da wohl nicht richtig ausgedrückt!
 
Tribal-Tec
Usernummer # 3904
 - verfasst
blöde frage vorweg: kann die klasse sonst nix, oder wird die dann noch erweitert, weil eine Klasse für ein solch "simples" Problem macht eigentlich wenig sinn.
 
Cymorris
Usernummer # 5951
 - verfasst
Hi,
ich würde dir gern weiterhelfen, aber irgendwie versteh ich die Frage nicht ganz...
Ne Klasse (Objektorientierung ?!) ist doch eigentlich ein "Bauplan" für einen Datensatz, mit Eigenschaften und Methoden...
Ne Klasse an sich führt doch nichts aus ?!

Ich "lerne" C++ in der Berufsschule (Borland C++ Builder), und wir haben im ersten Jahr
eigentlich nur Konsolenanwendungen programmiert, und im zweiten Jahr was mit Visual C++ gemacht.
Aber so ein Beispiel wie deins ist nicht vorgekommen. Falls ich mit was anderem dienen kann, kannst mir ja ne Mail schreiben.

Schönen Abend.
 
smpx7
Usernummer # 3909
 - verfasst
Genau das mit der Klasse stört mich auch ein wenig. Das bäste wäre da eine Funktion, damit könnte ich dienen [Wink]
 
nicogrubert
Usernummer # 1292
 - verfasst
warum eine klasse?

eine klasse beschreibt ein objekt und dessen attribute, methode etc.

ich denke, eine methode wäre das richtige, die (in Python) so aussieht:


ganz trivial:

def verdoppel(zahl):
return zahl + 2


oder mit ein paar abfragen:

def verdoppel(zahl):
if zahl:
try:
z = int(zahl)
return z*2
except:
return "%s ist keine Zahl." % z


cheers,
nico

edit: okay, ist zwar nicht c++, aber das prinzip sollte klar sein.

[ 21.09.2003, 10:21: Beitrag editiert von: nicogrubert ]
 
Herr Minimal
Usernummer # 3603
 - verfasst
nico c++ nicht irengdwas
include iostream //hier sollten spitze klammern stehen

class doubling
{
private:
int zahl;

public:
doubling();
~doubling();
void double(int ~zahl) { zahl = 2*~zahl; cout "zwei spitze klammenr nach links" zahl;}
}
void main void
{
doubling d = new doubling(); //weiss net ob das so genau geht, hab zu lange java gehabt
d.double(4); //jetzt sollte 8 ausgegeben werden
}
 
requital
Usernummer # 4539
 - verfasst
ich brauche halt ein main prog, welches eine methode in einer klasse aufruft. die verdoppel() methode in der klasse soll dann die zahl verdoppeln und ausgeben oder auch zurück ans main prog. geben.

unter java würde ichs natürlich selber hinbekommen, nur c++ ist mir noch fremd. als methode in einem prog würde ich's auch unter c++ hinbekommen. nur brauche ich ein programm welches aus zwei teilen besteht, die später zusammen gelinkt werden müssen.

ich brauche das beispiel um später daran den linkvorgang und relokation etc. zu erklären! dazu muss ich compilieren ohne zu linken, um an einem vorher nachher beispiel die vorgänge zu schildern. und javac hat eine solche option so weit ich weiß nit!

Bsp in java:


------------------------------
main.java
-----------------------
..
..
doppel dop = new doppel(); //konstruktor erstellen

dop.verdoppel(2); //methode in klasse "doppel" aufrufen

..
..
..

-----------------------
doppel.class
--------------------
...
...
...
public void doppel(int zahl){

zahl = zahl*2;
System.out.println("Ergebniss: ",zahl);

}
..
..
-------------------------------
so würde es in java aussehen nur ich brauche es halt in c++!!!
schonmal dankeschön!! [lach]
 
Herr Minimal
Usernummer # 3603
 - verfasst
ja schau dir mein beispiel an .. das ist c++


//doppel.h

class doppel
{
private:
int zahl;

public:
doppel();
~doppel();
void verdoppel(int zahl);
}


//doppel.cpp

doppel::doppel()
{
zahl = 0;
}

doppel::~doppel()
{
}

void doppel::verdoppel(int ~zahl)
{
zahl = 2*~zahl;
printf("Die zahl ist %d", zahl);
}


//main.cpp

include doppel.h //in spitzen klammern

void main(void)
{
doppel d = new doppel();
d.verdoppel(4); //sollte eine 8 ausgeben
}
 
requital
Usernummer # 4539
 - verfasst
ok irgendwie kann ich jetzt nicht das komplette post editieren, der smile sollte eigentlich dieser hier sein [Smile] . der andere sieht so nach auslachen aus ......so sollte es aber nicht gemeint sein!


aaahh vollkommen übersehen [Smile] das sieht so aus als wäre es genau das was ich brauche!
 
Herr Minimal
Usernummer # 3603
 - verfasst
scjhau dir das editierte von mir nochmal an
das ist so wie man es machen sollte.
 
requital
Usernummer # 4539
 - verfasst
was soll die ~ immer bedeuten?
 
mik
Usernummer # 5095
 - verfasst
~ ist der Destruktor und ist im Prinzip das Gegenteil des Konstruktors.
 
smpx7
Usernummer # 3909
 - verfasst
Die ~ beschreiben den Destructor. Zu jedem Konstruktor gibt es einen Destructor.

Hier mal eine Erläuterung aus einem anderem Board kopiert (c-plusplus.de):
Zitat:

Hallo,
in der Objektwelt von C++ ist der Konstruktor der Anfang, der Schöpfer, die Funktion die einem Haufen Nichts das Leben einhaucht und es in ein frisches, eigenständiges, lebendiges und hoffentlich glückliches Objekt umwandelt. Das Leben eines Objekts beginnt mit dem Ablauf eines Konstruktors. Bevor also nicht ein Konstruktor abgelaufen ist, kann ein Objekt nicht verwendet werden.
Ein Konstruktor schafft die Voraussetzungen um ein Objekt sinnvoll nutzen zu können. Hier werden Member initialisiert, Resourcen angeforder und was sonst noch alles nötig ist.
Da es unterschiedliche sinnvolle Anfangswerte für ein Objekt geben kann, kann es für eine Klasse auch mehrere Konstruktoren geben.

Ein Destruktor ist das genaue Gegenteil vom Konstruktor. Er ist das Ende, der Tod, die Funktion, die ein lebendiges, eigenständiges Objekt nach (hoffentlich) verrichteter Arbeit zurück in ein Haufen Nichts verwandelt.
Das Leben eines Objekts endet mit dem Aufruf des Destruktors.
Hier werden Resourcen freigegeben und sonstige Aufräumarbeiten verrichtet.
Für jede Klasse kann es nur genau einen Destruktor geben.


 
requital
Usernummer # 4539
 - verfasst
mmmm also ich hab jetzt dran rumprobiert, und ...........es läuft nicht!
kannste nochmal den sourcecode posten, der bei dir funzt?
und zwar mit jedem punkt und komma?


das wäre echt nett! [Smile]
 
Herr Minimal
Usernummer # 3603
 - verfasst
jo ok. muss ich dann heute abend mal machen.. bin noch in der uni.
 
Herr Minimal
Usernummer # 3603
 - verfasst
//main.cpp

#include
#include "verdoppel.h"
using namespace std;

int main (int argc, const char * argv[])
{
verdoppel *v = new verdoppel();
v->calculate(4);
return 0;
}

//verdoppel.h

using namespace std;

class verdoppel
{
private:
int zahl;

public:
verdoppel();
~verdoppel();
void calculate(int z);
};

//verdoppel.cpp

#include
#include "verdoppel.h"
using namespace std;

verdoppel::verdoppel()
{
zahl = 0;
}

verdoppel::~verdoppel()
{

}

void verdoppel::calculate(int z)
{
zahl = 2*z;
cout << "zahl = " << zahl;
}

hinter dem leeren include steht ein iostream in einfachen spitzen klammern. danke html sieht mans hier nicht. ansonsten geht der code so. habs mal eingehackt.
 
shadow
Usernummer # 1472
 - verfasst
Hab mal versucht es so einfach wie möglich und ohne Verschachtelungen zu schreiben. Sorry für die unmöglichen Classen-, Variablen- und Methodennamen. Mir ist auf die Schnelle leider nix besseres eingefallen *g*

#include

class ClassVerdopplung
{
private:
int Ergebnis;

public:
void verdoppeln(int Zahl);

};


void ClassVerdopplung::verdoppeln(int Zahl)
{
Ergebnis = Zahl * 2;
printf("Zahl: %i Ergebnis: %i ", Zahl, Ergebnis);

}

void main()
{
ClassVerdopplung Verdopplung;
int zahl;

zahl = 4;

Verdopplung.verdoppeln(zahl);

}
 




Kontakt | technoforum.de | readme


(c) 1999/2ooo/y2k(+1/+2/+3+4+5+6+7+8+9+2010+2011+2012+2013+2014+2015+2016+2017+2018+2019+2020+2021+2022+2023+2024+2025) technoforum.de | www.techno-forum.de
Das Forum für Techno | House | Minimal | Trance | Downbeats | Drum & Bass | Grime | Elektro | IDM | Elektronika | Garage | AI Music Suno Udio | Schranz | Hardtrance | Future Bass | Minimal Music | Ambient | Udio.ai | Dub | 2Step | Breakcore | no Business Techno | Dubstep | Big Room Techno | Grime | Complextro | Mashups | mnml | Bootlegs | Chicago House | AI Music Suno Prompt | Acid House | Detroit Techno | Chillstep | Arenastep | IDM | Glitch | Grime | Reaktor Ensembles | NuWave | Experimental Music | Noise Music | Fidgethouse | Ableton Live 12 | Melbourne Bounce | Minimal Trap | Sinee | kvraudio alternative | EDM | Splice | Bandcamp Soundcloud | Free Techno Music Download | Progressive Electro House | Free VSTi |
Betreiberangaben & Impressum siehe readme.txt, geschenke an: chris mayr, anglerstr. 16, 80339 münchen / fon: o89 - 5oo 29 68-drei
E-Mail: webmaster ät diesedomain
similar sites: www.elektronisches-volk.de | Ex-Omenforum | techno.de | USB | united schranz board | technoboard.at | technobase | technobase.fm | technoguide | unitedsb.de | tekknoforum.de | toxic-family.de | restrealitaet restrealität | boiler room
Diese Seite benutzt Kuhkies und du erklärst dich damit bei Betreten und Benutzung dieser Seite damit einverstanden. Es werden keinerlei Auswertungen auf Basis ebendieser vorgenommen. Nur die Foren-Software setzt Kuhkies ausschließlich für die Speicherung von Nutzerdaten für den einfacheren Logon für registrierte Nutzer, es gibt keinerlei Kuhkies für Werbung und/oder Dritte. Wir geben niemals Daten an Dritte weiter und speichern lediglich die Daten, die du uns hier als Nutzer angegeben hast sowie deine IP-Adresse, d.h. wir sind vollkommen de es fau g o-genormt, nixdestotrotz ist das sowieso eine PRIVATE Seite und nix Gewerbliches.


Powered by Infopop Corporation
UBB.classicTM 6.5.0