On Fri, 18 Jul 2008 07:03:37 -0700, Ben Voigt [C++ MVP]
<rbv@nospam.nos pamwrote:
I agree whole-heartedly about being closer to Java. But the OP didn't ask
about Java. :)
I disagree on the VB/VB.NET point, but I guess that's a matter of opinion
so not entirely unexpected. In spite of some fundamental conceptual
differences between C++ and C#, I find moving back and forth between those
languages much easier than moving back and forth between C# and VB.NET and
so to me they are more similar to each other than C# is to VB.NET (and
this is especially true if only limiting the comparison to C++/CLI rather
than C++ more generally).
And generics can do things templates can't. They are similar, but not
equivalent.
IMHO it's inflammatory to describe one language as "more powerful" as
compared to another, and in most cases (including this one) decidedly
inaccurate.
Of course, if by "other features are more powerful" you did not mean to
imply that C# does not also have "more powerful" features, then my concern
is misplaced. But that's not how I read your statement.
Pete
<rbv@nospam.nos pamwrote:
[...]
>
C# is far closer to Java and VB.NET than it is to C++.
>Seriously though, I think you're overthinking things. C#, C++, and
>VB all have substantially the same kinds of features. They are more
>like each other (especially C++ and C#) than they are like most other
>languages. Each language has some specific differences, and some
>VB all have substantially the same kinds of features. They are more
>like each other (especially C++ and C#) than they are like most other
>languages. Each language has some specific differences, and some
C# is far closer to Java and VB.NET than it is to C++.
about Java. :)
I disagree on the VB/VB.NET point, but I guess that's a matter of opinion
so not entirely unexpected. In spite of some fundamental conceptual
differences between C++ and C#, I find moving back and forth between those
languages much easier than moving back and forth between C# and VB.NET and
so to me they are more similar to each other than C# is to VB.NET (and
this is especially true if only limiting the comparison to C++/CLI rather
than C++ more generally).
C++ has
substantially the same OOP features as C#, but templates can do a not of
things generics can't,
substantially the same OOP features as C#, but templates can do a not of
things generics can't,
equivalent.
other features are more powerful as well, and as a
result C++ supports modern non-OOP programming styles (TMP for example).
result C++ supports modern non-OOP programming styles (TMP for example).
compared to another, and in most cases (including this one) decidedly
inaccurate.
Of course, if by "other features are more powerful" you did not mean to
imply that C# does not also have "more powerful" features, then my concern
is misplaced. But that's not how I read your statement.
Pete
Comment