Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

51

09.01.2009, 13:12

So, das hier ist das 1. Mal dass ich etwas mit std::map mache, habs bei UL gesehen und hoffe, dass das so ok ist.

C-/C++-Quelltext

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
#include <fstream>
#include <iostream>
#include <string>
#include <map>
#include <vector>

class CStringToSmileyConverter
{
public:
    bool InitFont(std::string Filename, int Size);
    bool InitSmileys(std::string Filename);
    void Convert(std::string Text);
    bool Save(std::string Filename);

    ~CStringToSmileyConverter();

private:
    std::map<char, std::string*> Characters; // Die Schriftart

    std::map<char, std::string> Smileys; // Die Smileys, bsp:   x enstspricht :lol:

    std::string ToConvert;
    int FontSize;
};

CStringToSmileyConverter::~CStringToSmileyConverter()
{
    for(std::map<char, std::string*>::iterator it = Characters.begin(); it != Characters.end(); it++)
        delete[] it->second;
}

bool CStringToSmileyConverter::InitFont(std::string Filename, int Size)
{
    FontSize = Size;

    std::fstream FontData(Filename.c_str(), std::ios::in);
    
    if(!FontData.good())
        return false;

    // Die Schriftgröße entspricht der Anzahl der Zeilen pro Zeichen


    std::string DataLine;
    char LineCharacter; // Zu welchem Zeichen gehört die Zeile


    // Zuerst kommt das Zeichen, dann das entsprechende Smileybild (Größe ist die Schriftgröße)

    // Für ein Zeichen werden also insgesamt Schriftgröße+1 Zeilen gebraucht

    for(int Counter=1; std::getline(FontData, DataLine); Counter++)
    {
        if(DataLine[0] == '#' && DataLine[1] == '#') // Zeile auslassen (Kommentar

        {
            Counter--;
            continue;
        }

        if(Counter % (FontSize + 1) == 1) // Jede Schriftgröße+1. Linie beinhaltet das Zeichen als Buchstabe

        {
            Characters[DataLine[0]] = new std::string[FontSize];
            LineCharacter = DataLine[0];
        }

        else // Die Zeile beinhaltet einen Teil des Symbols

        {
            if(Counter % (FontSize + 1) == 0)
                Characters[LineCharacter][FontSize-1] = DataLine;

            else
                Characters[LineCharacter][Counter % (FontSize + 1) - 2] = DataLine;
        }
    }

    return true;
}

bool CStringToSmileyConverter::InitSmileys(std::string Filename)
{
    std::fstream SmileyData(Filename.c_str(), std::ios::in);

    if(!SmileyData.good())
        return false;

    std::string SmileyInput;
    std::string SmileyOutput;

    for(; std::getline(SmileyData, SmileyInput);)
    {
        if(SmileyInput[0] == '#' && SmileyInput[1] == '#') // Zeile auslassen (Kommentar)

            continue;

        std::getline(SmileyData, SmileyOutput);

        Smileys[SmileyInput[0]] = SmileyOutput;
    }

    return true;
}

void CStringToSmileyConverter::Convert(std::string Text)
{
    ToConvert = Text;
}

bool CStringToSmileyConverter::Save(std::string Filename)
{
    std::fstream Output(Filename.c_str(), std::ios::out);

    if(!Output.good())
        return false;

    for(int Row=0; Row<FontSize; Row++)
    {
        for(int ToConvertCharacter=0; ToConvertCharacter<ToConvert.length(); ToConvertCharacter++)
        {
            for(int OutputSmileyCharacter=0; OutputSmileyCharacter<Characters[ToConvert[ToConvertCharacter]][Row].length(); OutputSmileyCharacter++)
            {
                Output << Smileys[Characters[ToConvert[ToConvertCharacter]][Row][OutputSmileyCharacter]];
            }
        }
        
        Output << "\n";
    }

    return true;
}

int main()
{
    std::fstream Input("input.txt", std::ios::in);
    if(!Input.good())
        std::cout << "Fehler beim Oeffnen der Input-Datei!" << std::endl;

    std::string Text;

    std::getline(Input, Text);

    CStringToSmileyConverter con;
    if(!con.InitFont("font.txt", 10))
        std::cout << "Fehler beim Laden der Schriftart!" << std::endl;

    if(!con.InitSmileys("smileys.txt"))
        std::cout << "Fehler beim Laden der Smileys!" << std::endl;

    con.Convert(Text);

    if(!con.Save("output.txt"))
        std::cout << "Fehler beim Speichern." << std::endl;
}


Zugegeben, bei der Speichern-Funktion hatte ich selbst nichtmehr so richtig den Durchblick :oops:
UL, kannst ja alles, das du anders machen würdest, hinkommentieren (kannst auch noch deinen Code zeigen ;) )

Anonymous

unregistriert

52

09.01.2009, 13:47

Zitat

Zugegeben, bei der Speichern-Funktion hatte ich selbst nichtmehr so richtig den Durchblick Embarassed

Warum, wo hakts?

53

09.01.2009, 13:56

Zitat

Warum, wo hakts?

C-/C++-Quelltext

1
Output << Smileys[Characters[ToConvert[ToConvertCharacter]][Row][OutputSmileyCharacter]];

Es war doch schon so spät und so dunkel draußen ;)

:oops::!::!::!::!::!::!::!::oops::oops::oops::oops::oops::oops::!::!::!::!::!::!::!::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::oops::!::!::!::oops::oops::oops::oops::oops::!::!::oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::!::!::!::!::!::!::oops::oops::oops::oops::oops::oops::!::!::!::!::!::!::oops::oops::oops:
:oops::!::!::oops::oops::oops::oops::oops::!::!::oops::oops::oops::oops::!::!::oops::oops::oops::oops::!::!::!::oops::oops::!::!::!::!::oops::oops::!::!::!::!::oops::oops::!::!::!::!::oops::oops::!::!::!::!::oops:
:oops::!::!::oops::oops::oops::oops::oops::oops::!::!::oops::oops::oops::!::!::oops::oops::oops::!::!::!::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::!::!::oops::oops::!::!::oops::oops::oops::oops::oops::oops::!::!::oops:
:oops::!::!::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops::!::!::!::!::!::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops::!::!::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::oops::oops::oops::oops::!::!::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::oops::oops::oops::!::!::oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::oops::!::!::!::oops::oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:
:oops::!::!::!::!::!::!::!::oops::oops::oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:

Anonymous

unregistriert

54

09.01.2009, 15:15

Hier mal meine, die ich in der Mittagspause runtergerasselt habe.

Sie besteht aus insgesamt 3 Dateien:
main.cpp
string_to_smiley.cpp und *.hpp

Damit es richtig funktioniert werden noch zwei weitere dateien benötigt:
- character.txt (Bedeutung der einzelnen Zeichen als Smiley)
- font.txt (Buchstaben in Zeichen. Jeder Buchstabe muss eine höhe von 12 haben!)

Datei: main.cpp

C-/C++-Quelltext

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
// \file:       main.cpp

// ###########################################################################

// \created:    09.01.2009

// \author:     Patrick Ullmann

// \purpose:    Hauptdatei.

// ###########################################################################

// \changes:

//

//  1           09.01.2009/Patrick Ullmann

//      Datei erstellt.

// ###########################################################################


// I N C L U D E S ###########################################################

#include <iostream>
#include "string_to_smiley.hpp"

// F U N K T I O N E N #######################################################


// ///////////////////////////////////////////////////////////////////////////

// LOCAL

//

// Programmeinsprungspunkt.

//

// \result: Exit-Code.

// ///////////////////////////////////////////////////////////////////////////

int main (void)
{
    try
    {
        string_to_smiley sts ("character.txt", "font.txt");
        sts.save_string ("Hi!", "output.txt");
    }
    catch (const std::exception& exception)
    {
        std::cout << exception.what () << std::endl;
        return -1;
    }

    return 0;
}


Datei: string_to_smiley.hpp

C-/C++-Quelltext

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
// \file:       string_to_smiley.hpp

// ###########################################################################

// \created:    09.01.2009

// \author:     Patrick Ullmann

// \purpose:    Klasse für das Konvertieren von einem String zu Smiley-Text.

// ###########################################################################

// \changes:

//

//  1           09.01.2009/Patrick Ullmann

//      Datei erstellt.

// ###########################################################################


#if !defined (string_to_smiley_hpp_included)
#define string_to_smiley_hpp_included 

#if defined (_MSC_VER) && (_MSC_VER >= 1020)
    #pragma once
#endif

// I N C L U D E S ###########################################################

#include <exception>
#include <fstream>
#include <string>
#include <map>
#include <vector>

// L I N K E R ###############################################################

    // TODO: <insert libraries>


// M A K R O S ###############################################################

    // TODO: <insert makros>


// D E F I N I T I O N E N ###################################################

    // TODO: <insert definitions>


// F U N K T I O N E N #######################################################

    // TODO: <insert functions>


// S T R U K T U R E N #######################################################

class string_to_smiley
{
public:
        // Constructor, Copy-Constructor und Destructor.

    string_to_smiley (void);
    string_to_smiley (const std::string& character_filename, const std::string& font_filename);
    string_to_smiley (std::istream& character_stream, std::istream& font_stream);
    string_to_smiley (const string_to_smiley& other);
    ~string_to_smiley (void);

        // Laden von Zeichendaten über den Dateinamen.

    void load_character (const std::string& filename);
        // Laden von Zeichendaten über einen Stream.

    void load_character (std::istream& stream);

        // Laden einer Font über den Dateinamen.

    void load_font (const std::string& filename);
        // Laden einer Font über einen Stream.

    void load_font (std::istream& stream);

        // Speichert einen String konvertiert in eine Datei.

    void save_string (const std::string& string, const std::string& filename);
        // Speichert einen String konvertiert in einen Output-Stream.

    void save_string (const std::string& string, std::ostream& stream);

        // assignment-operator: = string_to_smiley

    string_to_smiley& operator = (const string_to_smiley& other);
    
protected:

private:
        // Sicherung der Smilies für die Zeichen.

    std::map<char, std::string> character_data_;
        // Sicherung der Zeichen-Daten.

    std::map<char, std::vector<std::string> > font_data_;
};

#endif


Datei: string_to_smiley.cpp

C-/C++-Quelltext

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
// \file:       string_to_smiley.cpp

// ###########################################################################

// \created:    09.01.2009

// \author:     Patrick Ullmann

// \purpose:    Klasse für das Konvertieren von einem String zu Smiley-Text.

// ###########################################################################

// \changes:

//

//  1           09.01.2009/Patrick Ullmann

//      Datei erstellt.

// ###########################################################################


// I N C L U D E S ###########################################################

#include "string_to_smiley.hpp"

// F U N K T I O N E N #######################################################


// ///////////////////////////////////////////////////////////////////////////

// PUBLIC Constructor

// 

// ///////////////////////////////////////////////////////////////////////////

string_to_smiley::string_to_smiley (void)
{
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC Constructor

// 

// \param character_filename: Pfad zur Character-Datei.

// \param font_filename: Pfad zur Font-Datei.

// ///////////////////////////////////////////////////////////////////////////

string_to_smiley::string_to_smiley (const std::string& character_filename, const std::string& font_filename)
{
    load_character (character_filename);
    load_font (font_filename);
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC Constructor

// 

// \param character_stream: Input-Stream zu den Character-Daten.

// \param font_stream: Input-Stream zu den Font-Daten.

// ///////////////////////////////////////////////////////////////////////////

string_to_smiley::string_to_smiley (std::istream& character_stream, std::istream& font_stream)
{
    load_character (character_stream);
    load_font (font_stream);
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC Copy-Constructor

// 

// \param other: Referenz zu einer Instanz von string_to_smiley.

// ///////////////////////////////////////////////////////////////////////////

string_to_smiley::string_to_smiley (const string_to_smiley& other) :
    character_data_ (other.character_data_),
    font_data_ (other.font_data_)
{
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC Destructor

// 

// ///////////////////////////////////////////////////////////////////////////

string_to_smiley::~string_to_smiley (void)
{
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC

//

// Laden von Zeichendaten über den Dateinamen.

// 

// \param filename: Pfad zur Character-Datei.

// ///////////////////////////////////////////////////////////////////////////

void string_to_smiley::load_character (const std::string& filename)
{
    load_character (std::ifstream (filename.c_str ()));
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC

//

// Laden von Zeichendaten über einen Stream.

// 

// \param stream: Input-Stream zu den Character-Daten.

// ///////////////////////////////////////////////////////////////////////////

void string_to_smiley::load_character (std::istream& stream)
{
    if (!stream.good ())
        throw std::runtime_error (__FUNCTION__ + std::string (": invalid input stream."));

    for (std::string line; std::getline (stream, line); )
    {
        if (line.empty () || line.size () < 2)
            continue;

        character_data_[line.at (0)] = line.substr (1);
    }
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC

//

// Laden einer Font über den Dateinamen.

// 

// \param filename: Pfad zur Font-Datei.

// ///////////////////////////////////////////////////////////////////////////

void string_to_smiley::load_font (const std::string& filename)
{
    load_font (std::ifstream (filename.c_str ()));
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC

//

// Laden einer Font über einen Stream.

// 

// \param stream: Input-Stream zu den Font-Daten.

// ///////////////////////////////////////////////////////////////////////////

void string_to_smiley::load_font (std::istream& stream)
{
    if (!stream.good ())
        throw std::runtime_error (__FUNCTION__ + std::string (": invalid input stream."));

    for (std::string line, character; std::getline (stream, line); )
    {
        if (line.empty ())
            continue;

            // Zeichenwechsel.

        if (line.size () > 2 && line.substr (0, 2) == "//")
        {
            character = line.substr (2, 1);
            continue;
        }

        if (character.empty ())
            continue;

        font_data_[character.at (0)].push_back (line);
    }

    for (std::map<char, std::vector<std::string> >::iterator it = font_data_.begin (); it != font_data_.end (); ++it)
    {
        if ((*it).second.size () != 12)
            throw std::logic_error (__FUNCTION__ + std::string (": size of character '") + (*it).first + "' is invalid.");
    }
}
    
// ///////////////////////////////////////////////////////////////////////////

// PUBLIC

//

// Speichert einen String konvertiert in eine Datei.

// 

// \param string: String der konvertiert und gespeichert werden soll.

// \param filename: Pfad zur Ausgabe-Datei.

// ///////////////////////////////////////////////////////////////////////////

void string_to_smiley::save_string (const std::string& string, const std::string& filename)
{
    save_string (string, std::ofstream (filename.c_str ()));
}
    
// ///////////////////////////////////////////////////////////////////////////

// PUBLIC

//

// Speichert einen String konvertiert in einen Output-Stream.

// 

// \param string: String der konvertiert und gespeichert werden soll.

// \param stream: Output-Stream für die Ausgabe.

// ///////////////////////////////////////////////////////////////////////////

void string_to_smiley::save_string (const std::string& string, std::ostream& stream)
{
    if (!stream.good ())
        throw std::runtime_error (__FUNCTION__ + std::string (": invalid output stream."));

    for (unsigned int i = 0; i < 12; ++i)
    {
        for (std::string::const_iterator it1 = string.begin (); it1 != string.end (); ++it1)
        {
            std::string character = character_data_[(*it1)];
            std::vector<std::string> font = font_data_[(*it1)];

            for (std::string::iterator it2 = font[i].begin (); it2 != font[i].end (); ++it2)
                stream << character_data_[(*it2)];
        }
        stream << std::endl;
    }
}

// ///////////////////////////////////////////////////////////////////////////

// PUBLIC

//

// assignment-operator: = string_to_smiley

//

// \param other: Referenz zu einer Instanz von string_to_smiley.

// \result: Referenz auf diese Instanz.

// ///////////////////////////////////////////////////////////////////////////

string_to_smiley& string_to_smiley::operator = (const string_to_smiley& other)
{
    character_data_ = other.character_data_;
    font_data_ = other.font_data_;

    return (*this);
}


Jetzt noch die beiden anderen Dateien:

Datei: character.txt

Quellcode

1
2
x:!:
0:oops:


Datei: font.txt

Quellcode

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
//H
00000000
0xx00xx0
0xx00xx0
0xx00xx0
0xx00xx0
0xxxxxx0
0xxxxxx0
0xx00xx0
0xx00xx0
0xx00xx0
00000000
00000000
//i
0000
0000
0xx0
0xx0
0000
0xx0
0xx0
0xx0
0xx0
0xx0
0000
0000
//!
0000
0xx0
0xx0
0xx0
0xx0
0xx0
0000
0000
0xx0
0xx0
0000
0000


Ausgabe:
:oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::!::!::oops::oops::oops::oops::oops::oops::!::!::oops:
:oops::!::!::oops::oops::!::!::oops::oops::!::!::oops::oops::!::!::oops:
:oops::!::!::oops::oops::!::!::oops::oops::!::!::oops::oops::!::!::oops:
:oops::!::!::oops::oops::!::!::oops::oops::oops::oops::oops::oops::!::!::oops:
:oops::!::!::!::!::!::!::oops::oops::!::!::oops::oops::!::!::oops:
:oops::!::!::!::!::!::!::oops::oops::!::!::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::!::!::oops::oops::!::!::oops::oops::oops::oops::oops:
:oops::!::!::oops::oops::!::!::oops::oops::!::!::oops::oops::!::!::oops:
:oops::!::!::oops::oops::!::!::oops::oops::!::!::oops::oops::!::!::oops:
:oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:
:oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops:


Also ist nur recht schnell zusammengeschustert :)

Errschaffer

Alter Hase

Beiträge: 865

Wohnort: Frankfurt

  • Private Nachricht senden

55

09.01.2009, 15:19

Wie lange habt ihr Mittagspause?

Anonymous

unregistriert

56

09.01.2009, 15:21

Flexibel. Meistens aber so ne halbe Stunde bis ne Stunde. Der code da oben hat ca. hmn 20 Minuten gebraucht zu schreiben.

Anonymous

unregistriert

57

09.01.2009, 15:45

Ist mal ne Lustige Idee, bastel ich mir bei Gelegenheit auch mal (-:

58

09.01.2009, 16:10

Hmm, ein stringvector ist wirklich besser geeignet als ein string*.
Naja, bei mir kann man dafür die Größe frei wählen :), wäre zwar wahrscheinlich nicht viel Arbeit, das bei ULs Variante einzubauen, aber immerhin ;)
Die Funktionsweise ist ja im Grunde genommen ähnlich...

:oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::!::!::oops::oops::oops::oops:
:oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops::oops:
:oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops:
:oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops:
:oops::oops::oops::oops::oops::oops::oops::oops::!::!::!::!::!::!::!::!::oops::oops::oops::oops::oops::oops::oops::!::!::oops:
:oops::oops::oops::oops::oops::oops::oops::oops::!::!::!::!::!::!::!::!::oops::oops::oops::oops::oops::oops::oops::!::!::oops:
:oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops:
:oops::oops::oops::oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops:
:oops::oops::!::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::oops::oops::oops:
:oops::!::!::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::oops::!::!::!::!::oops::oops::oops::oops:

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

59

09.01.2009, 16:35

Zitat von »"defaultplayer^^

Hmm, ein stringvector ist wirklich besser geeignet als ein string*.
Naja, bei mir kann man dafür die Größe frei wählen :)


Kann man das bei einem vector nicht?!

60

09.01.2009, 16:54

Zitat

Kann man das bei einem vector nicht?!

Doch, aber ULs Variante unterstützt es in dieser Ausführung nicht. War also nicht auf den Vektor bezogen.

Werbeanzeige