Toon posts:

[C++] String+Int+String=String

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb dit stukje code:
code:
1
2
3
4
for (i=0;i<2;i++)
    {
    player[i] = new CPlayer("Player"+i,"player"+i+".cfg"); NumPlayers++;
    }

Natuurlijk kan dat niet: je kan geen integers aan strings plakken, je moet eerst converten (itoa), malloc, strcat, etc, etc.

Maar kan dat niet veel korter en efficiënter? Ik ben namelijk de 'ASP' manier ("Player"&cstr(i)&".cfg") gewend, maar voor zover mijn kennis nu reikt moet 't allemaal heel omslachtig in C++... of? :?

  • RickN
  • Registratie: December 2001
  • Laatst online: 14-06-2025
Laat maar...

He who knows only his own side of the case knows little of that.


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 09-09 22:48

.oisyn

Moderator Devschuur®

Demotivational Speaker

sprintf, ostrstream of ostringstream :)

overigens is geen van drieen efficienter, op de achtergrond gebeurt namelijk precies hetzelfde. Het is alleen efficienter in de zin van minder code :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Topicstarter
Thanx *D

Verwijderd

In de volgende versie van de C++ Standard Library zitten hoogstwaarschijnlijk features die dit soort basisconversies van en naar std::string makkelijker maken.

Bron: The C++ Standards Committee: Progress & Plans (dia 14).

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 02:22
Op maandag 01 april 2002 18:20 schreef Sneechy het volgende:
In de volgende versie van de C++ Standard Library zitten hoogstwaarschijnlijk features die dit soort basisconversies van en naar std::string makkelijker maken.
Klopt; de voorgestelde library code staat nu al op www.boost.org.
code:
1
boost::lexical_cast<std::string>( int )

doet wat je wil, nl. een int naar string casten.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein

Pagina: 1