WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

 
 
Themen-Optionen Ansicht
Alt 15.09.2003, 10:53   #15
thyrver
Veteran
 
Registriert seit: 30.11.2001
Alter: 44
Beiträge: 290


thyrver eine Nachricht über ICQ schicken thyrver eine Nachricht über AIM schicken
Standard

Zitat:
Die Möglichkeit gibt es: Einfach in der Funktion nicht auf die Datenfelder schreibend zugreifen.
Auf die Antwort hab ich gewartet. Ich war nur gespannt wers sagen wird.
Selbiges würde aber auch für alle anderen Variablen gelten, also warum gibts dann aberhaupt const?
Zitat:
Eine andere Variante gibt es nicht, sollte eigentlich logisch sein ...
Logisch ja. Aber nicht alles was mir logisch erscheint ist der Weisheit letzter Schluss. Oder anders gesagt, ich sehe keine Möglichkeit, aber vielleicht gibt es sie trotzdem und wer anderer hat einen Idee.
Zitat:
Mit anderen Worten schaut die Sache letztgültig so aus ( *seufz* es ist so, nicht eine Bemerkung in Deine Richtung):
Inwiefern hät ich das auf mich beziehen sollen?
Zitat:
1. Struktur allozieren
2. Strukturfelder initialisieren
3. Struktur in Arbeitsbereich (Strukturkopie) kopieren
4. Funktionsaufruf mit den bösen Veränderungen machen mittels Übergabe eines Adresszeigers auf die Strukturkopie
5. Glücklich sein, daß die Originalstruktur so bestehen bleibt wie sie vor dem Aufruf der Funktion ausgesehen hat, sprich die Weiterverwendung der ursprünglichen Werte geht durch das Kopieren und Verwenden der Kopie anstatt des Originals in Ordnung

mfg
Kikakater [/b]
Ich hab nichts dagegen einfach Pointer auf die Struktur oder ihre Elemente zu übergeben. Falls es jedoch eine Möglichkeit gibt den Inhalt zu schützen und trotzdem mit Pointern zu Arbeiten, so gehe ich gerne diesen Weg, im Sinne von Fehlerquellenminimierung.

2 Strukturen mit den selben Werten, eine zum Arbeiten und eine als Backup erscheint mir nicht zweckmässig.
Ein Beispiel: ich hab die Oberstruktur main. Diese enthält ALLE globalen Daten, alles was irgendwie von mehr als einer Funktion des ganzen Programms benutzt werden muß, wie zum Beispiel main.config.{ganzvieleconfigdaten} als auch main.workload.{1000 int variablen die modifiziert werden}. Die funktion funktion(&main.workload,&main.config) modifiziert jetzt die Werte der 1000 int variablen in main.workload. Auf main.config{*.*} wird nur lesend zugegriffen (das kann ich ja selbst bestimmen). Dann wäre es aber schön, wenn man die Configurationsstruktur auch nur lesbar übergeben kann. (wie beim öffnen einer Datei, da kann ich ja auch aussuchen, ob r_only, rw, usw). Mit 2 Strukturen könnte ich anschliessend mainkopie.config nach main.config kopieren. So bleibt meine Konfiguration zwar sicher erhalten, da ja alle Modifikation in main.config überschrieben werden (wohlgemerkt, ich würde main.config nicht bewußt in der Funktion modfizieren. Prinzipiell ist es aber ein Sicherheitsrisiko wenn Konfigurationen von überall modifiziert werden können), aber das ganze wird ziemlich unübersichtlich. (@kikakater: allerdings hatte ich die Idee erst durch das Lesen deines Postings). Und speichersparend ist das auch nicht.
thyrver ist offline   Mit Zitat antworten
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:54 Uhr.


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