turbo c++ explorer a stl.h

0

turbo c++ explorer, przy kompilacji, wywala błędy w pliku stl.h. można coś z tym zrobić? błędy:

[C++ Error] stl.h(37): E2293 ) expected
[C++ Error] stl.h(53): E2040 Declaration terminated incorrectly
[C++ Error] stl.h(53): E2190 Unexpected }
[C++ Error] stl.h(53): E2190 Unexpected }
[C++ Error] stl.h(69): E2293 ) expected
[C++ Error] stl.h(85): E2040 Declaration terminated incorrectly
[C++ Error] stl.h(85): E2190 Unexpected }
[C++ Error] stl.h(85): E2190 Unexpected }
[C++ Error] stl.h(108): E2139 Declaration missing ;
[C++ Error] stl.h(110): E2293 ) expected
[C++ Error] stl.h(119): E2040 Declaration terminated incorrectly
[C++ Error] stl.h(119): E2190 Unexpected }
[C++ Error] stl.h(119): E2190 Unexpected }
[C++ Error] stl.h(142): E2139 Declaration missing ;
[C++ Error] stl.h(144): E2293 ) expected
[C++ Error] stl.h(153): E2040 Declaration terminated incorrectly
[C++ Error] stl.h(153): E2190 Unexpected }
[C++ Error] stl.h(153): E2190 Unexpected }
[C++ Error] stl.h(175): E2139 Declaration missing ;
[C++ Error] stl.h(177): E2293 ) expected
[C++ Error] stl.h(186): E2040 Declaration terminated incorrectly
[C++ Error] stl.h(186): E2190 Unexpected }
[C++ Error] stl.h(186): E2190 Unexpected }
[C++ Error] stl.h(208): E2139 Declaration missing ;
[C++ Error] stl.h(210): E2293 ) expected
[C++ Error] stl.h(210): E2228 Too many error or warning messages
0

Przy każdej kompilacji? W każdej konfiguracji? Może przed #include czegoś co z stl.h korzysta masz błąd? Typowym dla C++ jest zgłaszanie błędów po miejscu, w którym rzeczywiście występują...

0

wiem o tym... trochę w programowaniu siedzę, i parę razy już mi turbo c++ explorer wywalał błędy bibliotek, ale zwykle radziłem sobie bez nich... początek pliku:

//---------------------------------------------------------------------------
#ifndef QLEDBH
#include <stl.h>
#include <vcl.h>
#include "QLEQuestLine.h"
#define QLEDBH

ciężko żeby coś errora mogło wywalić ;) poza tym, kompilator raczej się nie myli co do pliku, w którym błąd wystąpił.

0
griwes napisał(a)

ciężko żeby coś errora mogło wywalić ;) poza tym, kompilator raczej się nie myli co do pliku, w którym błąd wystąpił.
tyko w 98% przypadków, w pozostałych 2% może wskazywać zupełnie inne miejsce (lub pliki - tylko nagłówki).

Jak nie masz pewności co do nagłówka biblioteki napisz prostego testowego helloworda.

0

griwes - pozwol ze spytam o dosc trywialna, ale kluczowa rzecz: ten STL.h przyszedl z kompilatorem czy sam go doinstalowales np. SGI STL?

0

@up: z kompilatorem. to jakiś problem?

0

Wygląda na bug. Dodaj do typedefów w każdej klasie:

   typedef klasa_bazowa::size_type size_type;
   typedef klasa_bazowa::const_iterator const_iterator;

gdzie 'klasa_bazowa' to klasa po której dziedziczy dana klasa, np. 'Deque<_Ty>' dziedziczy po 'deque<_Ty, _Alloc>'.

//edit
znalazłem jedynie 3 wątki bez odpowiedzi:
http://forums.devarticles.com/c-c-help-52/bc-stl-h-won-t-compile-77037.html
http://www.mombu.com/programming/programming/t-stl-and-new-free-borland-turbo-c-1762705.html
http://groups.google.nl/group/borland.public.cppbuilder.language/browse_thread/thread/006ba408f6b79024/d67daa75279556af?show_docid=d67daa75279556af

0

ten drugi wątek wygląda ciekawie... zobaczę, co z tym vector.h (rozumiem, że to tam jest zdefiniowana klasa std::vector<>?).

0

Doczytaj dokładnie, autor nie zaincludował w końcu stl.h dlatego użył vector.h

0

a że się tak zapytam, po jakie licho dołączać nagłówek z epoki ARM, zachowany przez dinkumware tylko w celu mniej bolesnej migracji starych programów? Czyli historycznego śmiecia-naleciałość, jakich w C++ nota bene jest w ch... i jeszcze trochę?

Jak wywala błędy, to w sumie i dobrze, oduczy to może niektórych, żeby w końcu olać: vector.h, stl.h, i innych strstream.h

0

Może nie pakuj do jednego wora stl.h i vector.h, akurat rola stl.h jest inna (przecież nie ma <stl> ani <cstl>).

1 użytkowników online, w tym zalogowanych: 0, gości: 1