By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
457,864 Members | 1,321 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 457,864 IT Pros & Developers. It's quick & easy.

Turbo C++?

P: n/a
I am taking advanced C++ at college and we use Borland Turbo C++ 4.5 compiler.
How different is Turbo C++ from the standard C++?
I know Borland used to call their versions of C++ and Pascal Turbo,
but that was a long time ago; even the 4.52 compiler is old.

This is a requirement for the 4 year BS degree in comp sci,
which is a shame as I feel the students shouldnt be taught
on old crap.

Is it very important to learn C++ on the newest compilers, such as
Borland's 5.5, Visual C++ or VC++.net or
or are old compilers, even DOS ones, good enough for the basics.

--------------------------------------------------
remove *batSPAM* to e-mail me
--------------------------------------------------
Jul 19 '05 #1
Share this Question
Share on Google+
6 Replies


P: n/a
> I am taking advanced C++ at college and we use Borland Turbo C++
4.5 compiler. How different is Turbo C++ from the standard C++?
I suppose that it's very different due to its age.
This is a requirement for the 4 year BS degree in comp sci,
which is a shame as I feel the students shouldnt be taught
on old crap.
I think that the aims of an academic degree shouldn't be teaching
specific technologies in detail. So for this purpose, the old Turbo
C++ compiler is ok.
Is it very important to learn C++ on the newest compilers, such
as Borland's 5.5, Visual C++ or VC++.net or or are old compilers,
even DOS ones, good enough for the basics.


For your early steps the old Turbo C++ compiler should be sufficient,
but it is absolutely not suitable for real-world-programming today.
Jul 19 '05 #2

P: n/a
"Oliver S." <Fo*******@gmx.net> writes:
I am taking advanced C++ at college and we use Borland Turbo C++
4.5 compiler. How different is Turbo C++ from the standard C++?
I suppose that it's very different due to its age.
This is a requirement for the 4 year BS degree in comp sci,
which is a shame as I feel the students shouldnt be taught
on old crap.


I think that the aims of an academic degree shouldn't be teaching
specific technologies in detail. So for this purpose, the old Turbo
C++ compiler is ok.


But this is exactly why an old turbo C++ compiler is *not* Ok. The
student's C++ will be sharply limited by (and distorted by) the
limitations of that specific technology which is the old turbo
C++.

Further, it is best for the student to learn the high-level, easily
used parts of C++ first, such as std::vector<>, and so forth. That
old compiler doesn't support vector<> .
Is it very important to learn C++ on the newest compilers, such
as Borland's 5.5, Visual C++ or VC++.net or or are old compilers,
even DOS ones, good enough for the basics.


For your early steps the old Turbo C++ compiler should be
sufficient,

[snip]

No, I'm sorry, I don't think so. Most of the early examples from
reccomended beginners books on C++, such as Koenig & Moo's
Accelerated C++, will not compile on that compiler.
Jul 19 '05 #3

P: n/a
"Developwebsites" <de*************@aol.combatSPAM> wrote in message
news:20***************************@mb-m18.aol.com...
| I am taking advanced C++ at college and we use Borland Turbo C++ 4.5
compiler.
| How different is Turbo C++ from the standard C++?
| I know Borland used to call their versions of C++ and Pascal Turbo,
| but that was a long time ago; even the 4.52 compiler is old.

If it is an "advanced C++" course, it really seems ridiculous not
to use a more recent version of Borland's *free* compiler (v5.5:
see http://community.borland.com/article...,20633,00.html ).
Or gcc, of course...

| This is a requirement for the 4 year BS degree in comp sci,
| which is a shame as I feel the students shouldnt be taught
| on old crap.
|
| Is it very important to learn C++ on the newest compilers, such as
| Borland's 5.5, Visual C++ or VC++.net or
| or are old compilers, even DOS ones, good enough for the basics.

The fact it is a "DOS" or command-line compiler is not a problem
IMHO, although an IDE can help (why not the free DevC++, found
at http://www.bloodshed.net/devcpp.html ).

This said, it all depends on the scope of the course: does 'advanced'
include templates and the standard library ? Or does it just mean
something like 'classes and polymorphism' ?
If the course is relatively basic, an older compiler might be ok.
If not, given that we are talking about free tools, ...$@#...

Cheers,
Ivan
--
http://www.post1.com/~ivec <> Ivan Vecerina
Jul 19 '05 #4

P: n/a
llewelly writes:
Further, it is best for the student to learn the high-level, easily
used parts of C++ first, such as std::vector<>, and so forth. That
old compiler doesn't support vector<> .


As far as I am concerned the jury is still out on what the teaching sequence
should be. It is far from clear to me that the 'magical' part should come
first. I guess one of my biggest problems is that it is hard to motivate
the student to learn the "old ways" when he has already learned the modern
way; which I suspect is often horribly inefficient. Why learn hash tables
when there is "push_back" or whatever?

Having said that, I am still a bit disturbed that the OPs school seems to
have a considerable lag on the learning curve. It almost seems that they
are contemptuous of the students to use that old compiler for the course he
describes. As though they can't be bothered with trivia. I wonder if the
English course work in the same school is expected in Word Star format?
Jul 19 '05 #5

P: n/a
> I am taking advanced C++ at college and we use Borland Turbo C++ 4.5
compiler.
How different is Turbo C++ from the standard C++?
I know Borland used to call their versions of C++ and Pascal Turbo, but
that was a long time ago; even the 4.52 compiler is old.


I think I'm doing a similar sort of student programming thing to you. I am
currently using Borland's free command-line C++ compiler from:

http://www.borland.com/products/down..._cbuilder.html

(read the readme after download)

You have to register, but that's not a problem. It's free. I am compiling
code on it that AFAIK uses standard C++. I got bloody annoyed with it at
first as it wouldn't compile the "Hello World" program from a 1997 copy of
"C++ in 21 days" (Old syntax). But I was recommended Accelerated C++ by
Koenig & Moo. Things are now MUCH easier. It even seems to run the same
(syntax adapted) programs than my old compiler.

I WOULD BE WARY THOUGH, if you are using old compilers in college, as you
may be restricted with your support - If your demonstrators only know the
older syntax, you might be stuffed when it comes to help with debugging :)

Alex

--
Reply to:alex an.ti livingstone sp@am btinternet.com cutting the usual...
Jul 19 '05 #6

P: n/a
"osmium" <r1********@comcast.net> writes:
llewelly writes:
Further, it is best for the student to learn the high-level, easily
used parts of C++ first, such as std::vector<>, and so forth. That
old compiler doesn't support vector<> .
As far as I am concerned the jury is still out on what the teaching sequence
should be. It is far from clear to me that the 'magical' part should come
first. I guess one of my biggest problems is that it is hard to motivate
the student to learn the "old ways" when he has already learned the modern
way;


I have worked with people who learned the low-level parts of C++
first, and people who learned the high-level parts first. With
a few exceptions, the latter tend to be better programmers. For me,
for C++, the jury is closed. I learned the low-level stuff
first, and I used to believe that was the best way, but working
with people who didn't has changed my mind. I do agree that
students should learn how to implement all the basic data
structures, preferably movitated by an example of where a
hand-rolled tool can do better than the standard library. (This
would require some care in designing the assignment, but I think
it is do-able, except perhaps in the case of vector<> .)

which I suspect is often horribly inefficient.
Stop suspecting and measure. If you measure, you'll have some idea of
when the standard library is better, and when it's better to write
your own, or use an alternative. If you don't measure, you can't
make any large program efficient anyway.

In my experience the performance effect of the STL is to save lots of
time when one is writing the 90% of code that takes up 10% of the
time, which leaves one with more time to implemented optimized
special purposed data structures and algorithms for the 10% of
code that takes up 90% of time.

Of course, the last few places I worked, we treated the compiler like
that too; several performance crucial areas were re-written in
hand-optimized assembler. And the difference between
hand-optimized assembler, and compiler-generated, is *a lot*
bigger than the difference between the STL and hand-optimzed data
structures.

(Note: string, and iostream, which are part of the standard library
but not part of the STL, are usually implemented in a manner that
is inefficient for many (but not all) common operations.)
Why learn hash tables
when there is "push_back" or whatever?
I'm sorry, I don't understand your reference. SGI hash_map, hash_set,
do not support push_back .
Having said that, I am still a bit disturbed that the OPs school seems to
have a considerable lag on the learning curve. It almost seems that they
are contemptuous of the students to use that old compiler for the course he
describes. As though they can't be bothered with trivia.
Agreed.
I wonder if the English course work in the same school is expected
in Word Star format?


:-)

Jul 19 '05 #7

This discussion thread is closed

Replies have been disabled for this discussion.