Die Suche ergab 691 Treffer
- 28.04.2014, 18:33
- Forum: Algorithmen und Datenstrukturen
- Thema: Effiziente BitStream-Implementierung
- Antworten: 14
- Zugriffe: 4403
Re: Effiziente BitStream-Implementierung
Normalerweise mach ich auch alles mit LE. Hier dachte ich nur, BE würde mir mehr bringen, da ich auch auf Byte-, Word- und Dword-Ebene reingreifen wollte. Ich habe das aber nun auch auf deine Weise mit LE gelöst. Bevor ich primitive Datentypen schreibe oder lese gehe ich zunächst auf die nächste 8-B...
- 28.04.2014, 14:38
- Forum: Algorithmen und Datenstrukturen
- Thema: Effiziente BitStream-Implementierung
- Antworten: 14
- Zugriffe: 4403
Re: Effiziente BitStream-Implementierung
Ich habe nochmal einen Blick auf deinen code geworfen Schrompf. Wenn ich das jetzt nicht falsch interpretiere sorgt deine Beenden-Funktion ja doch dafür, dass LE/BE entscheidend ist, jedenfalls wenn ich davon ausgehe, dass ich Beenden mehrfach aufrufen kann und danach eventuell auch weiterschreibe. ...
- 25.04.2014, 14:34
- Forum: Algorithmen und Datenstrukturen
- Thema: Meine UTF-8 String Klasse
- Antworten: 20
- Zugriffe: 5101
Re: Meine UTF-8 String Klasse
Seit VC++6.0 habe ich mich von PCH verabschiedet. Es war damals ein Krampf (so wie vieles bei VC++6.0). Gestern habe ich aber mal wieder einen Versuch gewagt, da mein Projekt schon recht riesig ist und ich bei kleinen Änderungen teilweise alles neu bauen muss. Sofern man nur STL-Header im PCH einbez...
- 25.04.2014, 02:22
- Forum: Algorithmen und Datenstrukturen
- Thema: Effiziente BitStream-Implementierung
- Antworten: 14
- Zugriffe: 4403
Re: Effiziente BitStream-Implementierung
In Zip-ähnlichen Archiven nutzt man normalerweise eine Solid Block Size; man sagt also z.B., dass ein komprimierter Block immer nur 2 MiB lang sein kann und an einer Byte-Grenze beginnt. Möchte man eine bestimmte Datei aus dem Archiv, springt man zum ersten 2-MiB-Block, in dem ihre Daten liegen und...
- 24.04.2014, 16:33
- Forum: Algorithmen und Datenstrukturen
- Thema: Effiziente BitStream-Implementierung
- Antworten: 14
- Zugriffe: 4403
Re: Effiziente BitStream-Implementierung
Was meinst du mit bitweisem Bearbeiten? Nur Einzelbits schreiben / lesen? Das ist eigentlich nicht mein Ziel. Also ich würde schon gern eine bestimmte Anzahl an Bits in einem Rutsch lesen oder schreiben. Das könnte man auch über mehrfaches Lesen/Schreiben von Einzelbits realisieren, aber ob das dann...
- 24.04.2014, 14:10
- Forum: Algorithmen und Datenstrukturen
- Thema: Meine UTF-8 String Klasse
- Antworten: 20
- Zugriffe: 5101
Re: Meine UTF-8 String Klasse
Vielen Dank für den Link. Das werd ich mir gleich angucken wenn ich zu Hause bin. Und auch danke für die Tipps zum Thema Header/Modul. Das Problem bei der STL ist ja vermutlich das "T" im Namen.
- 24.04.2014, 14:02
- Forum: Algorithmen und Datenstrukturen
- Thema: Effiziente BitStream-Implementierung
- Antworten: 14
- Zugriffe: 4403
Re: Effiziente BitStream-Implementierung
Dann brauchst du aber nicht so etwas wie Lese- und Schreiboperationen mitten im Stream, oder? Die Kompressionen laufen ja normalerweise linear durch die Bits bzw. geben sie nacheinander aus. Da reicht dann ein Array von 32 Bytes in die du 0 und 1 schreibst, und sobald du das 32te erreichst, packst ...
- 24.04.2014, 13:17
- Forum: Algorithmen und Datenstrukturen
- Thema: Effiziente BitStream-Implementierung
- Antworten: 14
- Zugriffe: 4403
Re: Effiziente BitStream-Implementierung
Naja den BitStream möchte ich vorallem für Komprimierungsaufgaben verwenden, wo es um viele MB bis vielleicht sogar GB Daten geht. Da ist der Faktor 8 schon sehr hoch. Zumal ich aus dem Bitstream bestimmte Bitsequenzen auch als Werte interpretieren will. Für diesen Zweck müsste ich dann die Bytes wi...
- 24.04.2014, 11:56
- Forum: Algorithmen und Datenstrukturen
- Thema: Effiziente BitStream-Implementierung
- Antworten: 14
- Zugriffe: 4403
Effiziente BitStream-Implementierung
Hallo zusammen, mich würde mal interessieren, wie man einen BitStream effizient implementieren kann. Mit BitStream meine ich einen Stream (kann ruhig ausschließlich auf einem Byte-Array oder ähnlichem basieren), in den man eine beliebige Anzahl von Bits an eine beliebige Position schreiben kann und ...
- 24.04.2014, 11:41
- Forum: Algorithmen und Datenstrukturen
- Thema: Meine UTF-8 String Klasse
- Antworten: 20
- Zugriffe: 5101
Re: Meine UTF-8 String Klasse
[ Offtopic ] @ Krishty und Coding Cat : Ihr seid ja hier im Forum bekanntermaßen die "Cracks" wenn es um Optimierung und Analyse von Code geht. Für mich ist es oft schwer da zu folgen. Hättet ihr nicht mal Lust einen Artikel oder Forenbeitrag zu schreiben, wo ihr ein paar Tipps gebt, was m...
- 22.04.2014, 15:08
- Forum: Algorithmen und Datenstrukturen
- Thema: Meine UTF-8 String Klasse
- Antworten: 20
- Zugriffe: 5101
Re: Meine UTF-8 String Klasse
Also ich kann jetzt nicht so viel dazu sagen, da ich es grundsätzlich vermeide irgendwas anderes als ASCII oder ISO-8859-1 zu verwenden (also auch kein wstring oder Widechar-Versionen bei WINAPI-Calls). Und für Tools für Endkunden, wo Sprachen wichtig werden, nutze ich heute C# wo das alles kein Pro...
- 20.03.2014, 17:38
- Forum: Algorithmen und Datenstrukturen
- Thema: Was ist das für ein Dateisystem?
- Antworten: 7
- Zugriffe: 2674
Re: Was ist das für ein Dateisystem?
Vielleicht ein DVD-Image oder ähnliches? ISO 9660 / ECMA 119 oder ISO 13346 (UDF)?
- 03.03.2014, 15:02
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Resultate langer Codezeilen zwischenspeichern?
- Antworten: 20
- Zugriffe: 12489
Re: Resultate langer Codezeilen zwischenspeichern?
Stringkonkatenation ist imo der falsche Ansatz hier, was du eigentlich willst, ist ein stringstream: std::ostringstream msg; msg << "Extreeeeeeeeeeeeeeem lange Konkatenation" << 123456 << eineFunktion("blub") << "noch viel mehr Text" << undNochEineFunktion(x, y, z) << ...
- 03.03.2014, 12:12
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Resultate langer Codezeilen zwischenspeichern?
- Antworten: 20
- Zugriffe: 12489
Re: Resultate langer Codezeilen zwischenspeichern?
Der Vorteil ist, dass du deinen String einfach in ein Literal packst und fertig. Heißt, später steht da sowas: string sinnvollerName1 = eineFunktion(...); foo(string.Format( fooFormatString, // Besserer Name hier einfügen 123456, sinnvollerName1, undNochEineFunktion(x, y, z))); So bleibt der Code i...
- 02.03.2014, 20:55
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Resultate langer Codezeilen zwischenspeichern?
- Antworten: 20
- Zugriffe: 12489
Re: Resultate langer Codezeilen zwischenspeichern?
Wie stehts mit speichern der Literale (strings) in einer Variable + Format-Paramter? Für C# (was es ja augenscheinlich ist) wäre das so: foo(string.Format( "Extreeeeeeeeeeeeeeem lange Konkatenation{0}{1}noch viel mehr Text{2}usw", 123456, eineFunktion("blub"), undNochEineFunktio...
- 02.03.2014, 17:06
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Resultate langer Codezeilen zwischenspeichern?
- Antworten: 20
- Zugriffe: 12489
Resultate langer Codezeilen zwischenspeichern?
Hallo zusammen, ich habe mal eine ganz allgemeine Frage in die Runde. Wie geht ihr mit folgendem Problem um: Man möchte etwas berechnen, konkatenieren, etc. und der Ausdruck dafür ist etwas länglich. Das Ergebnis nutzt man nur an einer Stelle (z.B. übergibt man es an eine Funktion). Ist für euch hie...
- 27.02.2014, 00:55
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
Ja ich hab mich jetzt noch etwas zu dem Thema belesen. Gerade auch in Hinblick auf Cluster. Habe nun noch einen Wrapper drumrum gebaut, der Angaben zur Anzahl der Oktaven und der persistence (Frequenz/Amplitude) entgegennimmt. Ich hab auch schon Ansätze gefunden, wie ich bestimmte Anforderungen (z.B...
- 27.02.2014, 00:45
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: [gelöst]Verdammtes std::list::erase des letzten Elementes
- Antworten: 13
- Zugriffe: 2888
Re: [gelöst]Verdammtes std::list::erase des letzten Elemente
Jetzt kommen wir leider schon wieder an die Grenzen dessen, was sich mit C++ elegant ausdrücken lässt: // Rückwärts for (auto iter = mListe.end(); iter != mListe.begin(); ) { --iter; if (eineBedingung(*iter)) iter = mListe.erase(iter); } Gibt es einen speziellen Grund dafür, dass du den Iterator vo...
- 25.02.2014, 21:59
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: [gelöst]Verdammtes std::list::erase des letzten Elementes
- Antworten: 13
- Zugriffe: 2888
Re: Verdammtest std::list::erase des letzten Elementes
Etwas kürzer wäre das Folgende. Keine Ahnung ob das performant ist. Man hat zwar zwei zusätzliche Operationen falls die Bedingung erfüllt ist, allerdings spart man sich eine Verzweigung. Weiß nicht ob das hier in Hinsicht auf Branch Prediction eine große Rolle spielt. Ist auf jeden Fall kürzer zu sc...
- 25.02.2014, 20:27
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
Wo hast du deinen her? Würde mich interessieren wie der aussieht, denn mit 3D-Noise will ich demnächst auch wieder experimentieren. Hast du einen Link? Ich habe eine C++-Portierung des Ursprungsalgorithmus von Ken Perlin. Du findest ihn hier: http://solarianprogrammer.com/2012/07/18/perlin-noise-cp...
- 25.02.2014, 17:21
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
Hatte leider nicht viel Zeit und hab daher die erste halbwegs vernünftig aussehende Implementierung verwendet. Die besteht nur aus 5 überschaubaren Funktionen und nutzt C++11-Features. Es ist eine Klasse, die man mit einem seed-Wert initialisiert und dann gibt es eine Methode, die dir den noise-Wert...
- 24.02.2014, 23:37
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
So endlich hatte ich mal ein bisschen Zeit und hab versucht deinen Code in C++ zu gießen inklusive PerlinNoise-Implementierung. Hab leider auf die schnelle keine gefunden, die so schön konfigurierbar war, wie die in deinem Beispiel. Aber ein seed war natürlich dabei. Nach ein bisschen Gefummel und A...
- 20.02.2014, 21:00
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
Cool danke. Das sieht wirklich vielversprechend aus. :) Werde gerade leider noch von meinem Map-Shader aufgehalten. Danach guck ichs mir mal genauer an.
- 18.02.2014, 12:57
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
Jo danke. Ich guck mal was ich hinkriege. Ich muss erstmal eine Funktion hinkriegen, die möglichst interessante Inselformen generiert. Soll ja nicht zu eckig oder zu rund werden. ;) Ich glaub bei Anno hatten sie sich das einfach gemacht und eine Hand voll statischer Inseln fest vorgegeben. Und die d...
- 18.02.2014, 00:24
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
Danke. Theoretisch ein guter Ansatz. Die Frage ist dann aber wie ich z.B. ein Atoll abbilde. Also mehrere Inseln. Das ist so ziemlich das Wichtigste weil das Spiel auf Inseln spielen soll. Man kann sich das vom Aussehen etwa wie Anno 1602 vorstellen von den Maps (halt ohne Iso).
- 17.02.2014, 12:24
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Re: Zufällige 2DMap-Generierung
Danke erstmal für die Antwort. Die beiden Sachen bringen mich auf eine gute Idee. Ich werde erstmal grob Insel-Shapes je nach Mapgröße und Inselanzahl generieren (also einfach erstmal geometrisch ohne Rücksicht auf Tile-Grenzen) und daraus dann vereinfacht die Formen der Landmassen in Tiles erzeugen...
- 16.02.2014, 22:30
- Forum: Algorithmen und Datenstrukturen
- Thema: Zufällige 2DMap-Generierung
- Antworten: 21
- Zugriffe: 11028
Zufällige 2DMap-Generierung
Hallo zusammen, ich bastele gerade an einem kleinen 2D-Spiel. Für die Welt nutze ich eine tilebasierte 2D-Karte, die aus 32x32 großen Tiles besteht und 32x24 bis 2048x2048 Tiles groß sein kann. Ich möchte nun einen Algorithmus einbauen mit dem Zufallskarten erstellt werden. Ich habe einige Regeln (b...
- 07.02.2014, 03:17
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: [C++] Snippets
- Antworten: 53
- Zugriffe: 23847
Re: [C++] Snippets
Sieht nicht so aus, dass es mit VS 2010 geht. Für C# ja, für C++ nein. Es wird absolut gar nichts an Kommentaren von IntelliSense angezeigt.
- 06.02.2014, 21:39
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: [C++] Snippets
- Antworten: 53
- Zugriffe: 23847
Re: [C++] Snippets
Arbeite leider auch nur im VS zur Zeit. Wäre aber cool wenn man das Beispiel für möglichst viele Compiler/IDEs erweitern könnte.Krishty hat geschrieben:Vielleicht kann, wer auf diesen Systemen entwickelt, was damit anfangen.
- 06.02.2014, 21:23
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: [C++] Snippets
- Antworten: 53
- Zugriffe: 23847
Re: [C++] Snippets
TO-DO-Markierungen für Visual C++ in Quelltext Benutzung: TODO("get shit done"); erzeugt eine anklickbare Meldung in Visual C++’ Ausgabefenster. #define TODO_INTERNAL_STRINGIZE(text) #text #define TODO_INTERNAL_QUOTE(text) TODO_INTERNAL_STRINGIZE(text) #define TODO(toDoText) __pragma(...