[ pocetnik @ 19.03.2002. 21:32 ] @
koristim Borlandov Turbo C++ 4.5 i u direktoriju include postoji string.h, uključim string.h(probao sam i bez .h), i u funkciji main() napišem npr. string recenica svaki put kompajler javlja ovu grešku:

Undefined symbol 'string' in function main()

u čemu je greška?

i da vas pitam dal neko ima knjigu MS Visual C++ 6 Biblija od Mikro knjige, jer ja je mislim naručiti pa me zanima dal je dobra za početnike.
[ Dragi Tata @ 19.03.2002. 21:35 ] @
Probaj std::string, ili stavi pre funkcije main

using namespace std;

I koristi u ovakvim slučajevima

#include <string>

bez .h
[ leka @ 20.03.2002. 07:14 ] @
Pa treba da radi i sa .h i bez .h :)
Ono
Code:
using namespace std;
je zapravo najbitnije.
[ pocetnik @ 20.03.2002. 12:18 ] @
using namespace std;

u ovom slučaju javlja grešku
Declaration syntax error

a u slučaju std::string
Type qualifier 'string' must be a struct or class name in function main()
[ Dragi Tata @ 20.03.2002. 15:57 ] @
Pa ne znam kako to beše ide sa Borlandom, ali sting.h bi trebalo da uključuje C header fajl za stringove (strcpy itd), a string (bez h) je za std::string. No, kao što napomenuh, tako piše u standardu, a kako je to izvedeno u ovoj konkretnoj implementaciji, pojma nemam.

A ti, pocetnik, pošalji ceo primer ako ti nije teško. Da pogledamo...
[ filmil @ 21.03.2002. 08:18 ] @
Citat:
Dragi Tata:
Pa ne znam kako to beše ide sa Borlandom, ali sting.h bi trebalo da


Ja bih razmislio i o tome koliko BC++ 4.5 podrzava trenutni standardni C++. Cini mi se da je malo mator da bi podrzavao stringove onako kako su sada definisani, hedere bez .h i namespace.

poz.
[ pocetnik @ 21.03.2002. 14:47 ] @
#include <string>
#include <iostream.h>
using namespace std;

int main() {
string tekst("neki tekst.....");
cout << tekst << endl;
cout << "Size = " << tekst.size() << endl;
cout << "Capacity = "
<< tekst.capacity() << endl;
tekst.insert(1, "opet neki tekst.... ");
cout << tekst << endl;
cout << "Size = " << tekst.size() << endl;
cout << "Capacity = "
<< tekst.capacity() << endl;
tekst.reserve(500);
tekst.append("tekst....");
cout << tekst << endl;
cout << "Size = " << tekst.size() << endl;
cout << "Capacity = "
<< tekst.capacity() << endl;
}

evo ovo je primjer programa, a kompajler javlja ove greške:
Compiling
Error tekst.CPP 3: Declaration syntax error
Error tekst.CPP 6: Undefined symbol 'string' in function main()
Error tekst.CPP 7: Undefined symbol 'tekst' in function main()


Pregledao sam i Help, ali nema ništa o stringu.
[ filmil @ 21.03.2002. 15:51 ] @
Citat:
pocetnik:
using namespace std;


Reklo bi se da BC++ 4.5 ne podrzava namespace i ostalo.

Mozda bi ti korisno bilo da umesto BC++ 4.5 probas da iskoristis Borland Builder, koji je prilicno u skladu sa vazecim C++-om.

f.
[ Dragi Tata @ 21.03.2002. 15:57 ] @
Da, da... ako me pamćenje dobro služi, BC 4.5 je izašao negde 1995/6, a standard je usvojen 1998.

Jednostavno, moraćeš da nađeš noviji kompajler ako hoćeš da koristiš std::string. A program izgleda OK, osim što umesto iostream.h treba da ide samo iostream (bez h).