Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme.

[c++] class

Diskussion: [c++] class im Forum Code Kitchen, in der Kategorie Software Home; Anzeige mal ne frage an unsere c++ freaks.... habe eine klasse mit diversen variablen und ein paar funktionen drin...wenn ich ...

Antwort
Alt 11.09.02, 09:00   #1 (permalink)
Moderator
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard [c++] class

Anzeige

mal ne frage an unsere c++ freaks....

habe eine klasse mit diversen variablen und ein paar funktionen drin...wenn ich nun ein array von z.b. 100*4 feldern von dieser klasse mache, sind diese funktionen logischerweise auch 100*4 mal vorhanden. da ich diese funktionen jedoch nur 1 mal benötige (bekommen übergabeparameter) sind die restlichen (100*4)-1 funktionen sozusagen überflüssig.

meine fragen nun:
- braucht so eine funktion (ca10-20 zeilen) viel speicher?
- gibt es einen grossen performanceschub wenn ich diese funktionen als normale funktionen code (also nicht in der klasse)?

soox ist offline   Mit Zitat antworten
Alt 11.09.02, 13:13   #2 (permalink)
Tec
Senior Member
 
Registriert seit: 02.10.01
Tec Leistung: Facit NTK
Likes: 1
Standard

Jede dieser Funktionen im Array ist wie Du sagtest mehrmals vorhanden, ebenso die Variablen.

Zitat:
- gibt es einen grossen performanceschub wenn ich diese funktionen als normale funktionen code (also nicht in der klasse)?
Kommt darauf an auf welchem Zielsystem Dein Programm läuft. Bei Computern mit weniger RAM hat es garantiert einen Geschwindigkeitsgewinn.
Tec ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 11.09.02, 14:47   #3 (permalink)
Moderator
Themenstarter
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard RE: [c++] class

Zitat:
Original von soox
- braucht so eine funktion (ca10-20 zeilen) viel speicher?
hat noch einer eine antwort auf diese frage? würde gerne wissen wieviel speicher so eine funktion benötigt...
soox ist offline   Mit Zitat antworten
Alt 11.09.02, 15:10   #4 (permalink)
Member of Honour
 
Registriert seit: 20.10.01
boppy Leistung: Facit NTK
boppy eine Nachricht über ICQ schicken
Likes: 0
Standard

mal eine dumme frage: warum probierst du es nicht einfach aus?
boppy ist offline   Mit Zitat antworten
Alt 11.09.02, 19:11   #5 (permalink)
Member of Honour
 
Registriert seit: 03.10.01
blueflash Leistung: Facit NTK
Likes: 1
Standard

*LOL*

tut mir leid, aber ihr seid auf dem holzweg. das selbe problem hatten die entwickler von c++ wohl auch. deshalb wird jede member funktion nur _einmal_ im speicher abgelegt. damit sie weiss, welches objekt gerade diese funktion aufruft, wird ihr als parameter ein zeiger auf diese klasse (this, heist er) übergeben. alle fragen beantwortet?
blueflash ist offline   Mit Zitat antworten
Alt 11.09.02, 20:40   #6 (permalink)
 
Registriert seit: 31.01.02
Armitage Leistung: Facit NTK
Likes: 0
Standard

Was mr nicht ganz klar ist:

Benutzt Du die funktion EINER Klasse mehrmals ? Oder leitest Du die klasse mehrmals ab (100*4)..wenn ja gibts fuer jede Funktion imho einen eigenen stack und speicherplatz fuer die variablen wird eh verbraten..

ergo:

leitest Du die KLasse n- mal ab..hast du n funktionen mit n variablen
was bedeuten wuerde n stacks und n mal laufzeitspeicher..sofern sie "zur selben Zeit" laufen....

"- braucht so eine funktion (ca10-20 zeilen) viel speicher?"
:: hat nichts mit der zeilenanzahl zu tun

"gibt es einen grossen performanceschub wenn ich diese funktionen als normale funktionen code (also nicht in der klasse)?"
:: kommt wieder darauf an was du machst...grundsaetzlich sind "nicht outgesourcte" funktionen flotter...

wenn Du 100*4 *n variablen deklarierst verbraetst du auch den speicher pauschal...

Beschreib mal bitte genauer was du vorhast..

bye
seth

:wq!
Armitage ist offline   Mit Zitat antworten
Alt 12.09.02, 11:45   #7 (permalink)
Moderator
Themenstarter
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard

das ganze geht um folgendes gerät: http://www.spirentcom.com/analysis/view.cfm?P=138

ziel ist es dieses gerät anzusprechen. vom hersteller wird eine lib für eigenentwicklung bereitgestellt.

in dieser lib hat es nun verschiedene EIGENE variabeltypen/strukturen. mein ziel ist es nun eine structur zu bauen mit dem ich die ganzen definierten streams(zu übertragende packete) speichern kann. hab zwar im vornherein keine ahnung von der anzahl dieser streams nehme aber mal einen mittelwert von 400 stück an (für ne anständige analyse).

@blueflash: wird dieser "this" zeiger automatisch übergeben????
soox ist offline   Mit Zitat antworten
Alt 12.09.02, 13:07   #8 (permalink)
Member of Honour
 
Registriert seit: 03.10.01
blueflash Leistung: Facit NTK
Likes: 1
Standard

also, nochmal ganz genau: wenn man eine klasse definiert, wird der code jeder member funktion _einmal_ abgelegt (auf dem stack, glaub ich). wenn ich ein objekt dieser klasse konstruiere, das dann die funktion aufruft, wird dieser funktion _automatisch_ ein zeiger namens this übergeben, dieser zeigt auf das aufrufende objekt. wenn ich eine klasse ableite, wird die funktion auch für die abgeleitete klasse gültig, sie wird nur nocheinmal geschrieben, wenn sie überladen wird.
ich hoffe damit sind alle fragen beantwortet.
blueflash ist offline   Mit Zitat antworten
Alt 13.09.02, 10:16   #9 (permalink)
Moderator
Themenstarter
 
Registriert seit: 17.10.01
soox Leistung: Facit NTK
Likes: 0
Standard

*freu* habs begriffen.ja, die fragen sind vorerst beantwortet...vielen dank für die antworten....
soox ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Software Home » Code Kitchen » [c++] class
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP class skymuss Code Kitchen 3 21.06.08 19:55
.class in .txt (Java) mP765 Code Kitchen 4 01.05.07 21:47
C++ "komplizierte" class... NULL!=NULL Code Kitchen 1 06.11.06 22:33
class CPU8080 (Web-) Design und webbasierte Sprachen 3 29.05.06 14:12
Microsoft Class Server Letismoja (In)security allgemein 6 17.02.04 20:37


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61