im starting to learn c++ right now, and i notice a lot that there is a new language called c#?? what the heck is it? is it the C.net just by a different name?? please halp!
Printable View
im starting to learn c++ right now, and i notice a lot that there is a new language called c#?? what the heck is it? is it the C.net just by a different name?? please halp!
It is a new language from MS. It is like a mix of C++, Java, and VB.
It's a logical language that inherits C , C++ Power !
wow, that sounds so awesome... it'll probably be a great language... the simplicity of vb, the power of c++ and well... the power of java!! cool, thnx for opening my mind!
well..there isnt truth..the "power of c++" is just a way of ms make things look in a way it isnt..it is POWER OF VB with the SINTAX OF C++..also it has some features of java
Well , there're many features C# has over VB.So it's not the power of VB as you said PT Exorcist !
nop, C# just has the features of the .NET framework...that in this case are 99% the same as vb.net..so MS dont come with bullsh*t of "power of c++" because it isnt! they make it look like C# power inherits directly from c++ and it isnt true..it inherits from the Intermediate Language..but if u think that it is valid to say that c# has c++ power then i say VB.NET also is "c++ power"...
and again, microsoft made another useless software to suck the money and living hell out of people... thnx for telling me!
man, C# is nice but it's not the DIVINE language MS makes ppl think of
What I'm thinking of right now is : aren't C++ ,C# ,VB .NET using the same Library Classes and CLRT !!.So a class developed by C++ can be used safely and working greatly in VB and C# and vice versa.Doesn't this rings a bill !!!
Anyways, you can write applications in C# as power as C++'s.Sometimes , it would be suck to write that in VB.VB usually is for quick applications.I know I'm not an expert in C++ but I used to have some silly basics and little knowledge.C# is worth a look .It's the future and next generation for building robust applications .I'm sure they will make it more powerful than C++ in the next few years.
lol sorry but i dont believe in that.
how can a language built in the CLR produce faster code than c++'s machine code?
and in C# u'll never get all the control u'd get with c++...
and why do ppl continue threating vb.net and C# as too completly different languages? they are built into the same language, IL, so they are 99% the same
Believe it or not . look over this page .Quote:
Originally posted by pirate
It's a logical language that inherits C , C++ Power !
Now that you said that, people will think C# is a 'useless' language too! ;)Quote:
Originally posted by PT Exorcist
and why do ppl continue threating vb.net and C# as too completly different languages? they are built into the same language, IL, so they are 99% the same
To everyone that might think this: The .NET IDE was written in C#, and therefore could just as easily have been written in VB.NET with virtually no difference in the end-product.
Why do people always put down higher-level languages? Just because you cant write Unreal 2 or Doom 3 with them?
Bull-Shiznit!!! They just want to make people think C# is the best language to date so they will sell more copies!Quote:
From MS's site:
What is C#?
C# (pronounced "C sharp") is a simple, modern, object-oriented, and type-safe programming language derived from C and C++. C# aims to combine the high productivity of Visual Basic and the raw power of C++. Visual C# .NET is Microsoft's C# development tool. See Visual C# Language for more information.
Exactly Hu Flung Dung, that's what i've been saying all the time about..
After reading through this thread, I'm dissapointed. Many of you have failed to understand why C# was created. MS doesnt just create something for no reason, even if they are a monopoly and want to take over the world. They're not purposely trying to frustrate you to learn a new language. So here's the truth:
1 - C# is cross-platform just like C++. It's been approved by official standards commities as an actual language, not just a Microsoft one. Ever heard of Mono for Linux, etc? Practically the same thing. VB.NET is NOT cross-platform.
2 - C# has more power than VB and less than C++. C# was built by Microsoft from the ground up, meaning there is no left-over residue code from previous Visual Studio's like VB had. Remember, VB.NET was never designed to be OOP and it still isn't fully there. C# has things like pointers, which are built in like an OOP language is supposed to have. There are no "ByRef" pointer work-arounds like in VB.NET, as someone said. But, C# doesn't have the power of C++, you are all correct. C# is a middle-of-the-field language.
3 - C# is built from ground up, especially for Java programmers. This makes it easier for Java programs to migrate to a C type language easier and visa versa. Again, you can see how C# can appeal to a WIDE audience, including developers for VB, C++, Java, and others.
4 - C# is the way a language should be. It uses the .NET Framework to it's 100% fullest, which VB.NET does NOT DO. It does things like garbage collection, managed code, etc, and is built in a way that most programmers have agreed is the way a language SHOULD be. Microsoft did a lot of research when designing this language, so don't think they just threw it together to make money.
5 - I hate to throw my opinion in here, but C# is easier to learn than C++. If you already know C++, then great, stick with it, but just think of C# as a stepping stone. It was the missing link between the ridiculed VB and the too-hard-to-learn C++.
... and no, I don't work for MS. :)
-- Ethan --
As much as I love C#, I think you might be a little wrong in a couple areas.
C# is cross platform? hmmmm....could be, but isn't. It has been approved to a standard, that is correct, but the framework that C# uses has NOT been. This means you really can't do much with C# cross platform. Mono wouldn't be just for C#, VB.Net could utilize it also.
VB.Net and C# get compiled to MSIL, which, is an intermediary language. Both produce the exact same code when compiled if they are doing the exact same thing. No difference there.
This is a lie. MS completely rebuilt VB.Net; they had to decide to keep in this for old VB programmers, not because it is a left over work around.Quote:
There are no "ByRef" pointer work-arounds like in VB.NET
There is more wrong with your 'facts', but I am done writing right now.
another lie here :p! VB.NET is fully OOP . Every .NET Control(Forms, buttons, listboxes ...etc) is considered to be an separate object itself . So when we run VB.NET for example we are working in an OOP environment .Quote:
Originally posted by ethanwa
Remember, VB.NET was never designed to be OOP and it still isn't fully there.
ethanwa is not completly right and not completly wrong. And he brought across the most important points. But there's one point where I really disagree:
C# is easier to learn than C++, no doubt. But I say learn both. Learn C# first if you're used to that kind of language or C++ if you want to learn both more quickly and you are a good learner.Quote:
5 - I hate to throw my opinion in here, but C# is easier to learn than C++. If you already know C++, then great, stick with it, but just think of C# as a stepping stone. It was the missing link between the ridiculed VB and the too-hard-to-learn C++.
C# and C++ are there for different things, but once you know one it's easy to learn the other (esp. C++ then C#) so learn both and you can do all the different things.
After a little more research, I'm pulling back on my overwhelming support for C#. I now see that VB.NET and C# are pretty much the same thing with different syntax. Either way the .NET Framework converts it all to the same IL.
C# was more likely invented just to help C++ and Java developers move over to a more up-to-date OOP language without feeling like they are being pushed to the "lesser" VB with different syntax. Many C++ developers look down on VB as a lesser language and see C# as the almighty king when compared, when really, they are uninformed and stubborn and don't know the facts about .NET.
-- Ethan --
wow, look how this thread envolved from just one simple stupid question of mine!! he he!
i think when looking at how C# works u can see it has the syntax of C++, but still is gonna have the slowdowns of VB.. this is cause of the RAD features and its architecture
just as a small example take a control like a checkbox.. in C# or VB when clicked on, it updates a checked variable every time but in C++ u only update the variable when and if u say/need to
just an example of how it boils down to getting rid of extra stuff
NOW a 4th language which had the setup of C++ but the syntax of VB might be interesting
No, not quite correct. In plain API the checkbox stores its state internally. Of course it uses a variable for that. When you need the state of the checkbox you query the checkbox for it and probably store it yourself in a temporary variable.Quote:
Originally posted by dis1411
just as a small example take a control like a checkbox.. in C# or VB when clicked on, it updates a checked variable every time but in C++ u only update the variable when and if u say/need to
In the VB and .Net frameworks it's the same except that the properties syntax makes it look like the checkbox class directly exposed the variable. In reality the property getter queries the underlying checkbox for the value. The drawback is that it does this everytime you access the property, which is why I don't want properties to be included in C++.
i was talking about the variable that the programmer uses.. but i see you know what i mean by your 2nd paragraphQuote:
No, not quite correct. In plain API the checkbox stores its state internally. Of course it uses a variable for that.
Yes, but you can optimize your C# code to eliminate this behavior by doing the same thing you would do in C++. Take the properties value and store it in a variable for later use. Most times though, it doesn't matter how you do it because most apps written in C# don't require the little speed gain you are talking about; if they did, they would use C++:)Quote:
Originally posted by CornedBee
In the VB and .Net frameworks it's the same except that the properties syntax makes it look like the checkbox class directly exposed the variable. In reality the property getter queries the underlying checkbox for the value. The drawback is that it does this everytime you access the property, which is why I don't want properties to be included in C++.
Just thought I'd throw something into the mix here...
Visual Studio .NET 2003 (coming in April with the .NET 1.1 Framework) has some major changes for C++ users. You'll be able to do a lot of the RAD development that VB and C# users use. It'll included full support for on-the-fly windows forms, controls, etc.
Also, there is a forth language coming with VS.NET 2003 as well. It's called J#.
Don't you just love how Microsoft continues to confuse developers with .NET? Haha
-- Ethan --
Those aren't major changes. The RAD editor works only for Managed C++ and is just a slight modification of the C# RAD editor. The more important changes are in standards compliance: VC++.Net 2003 will be one of the most standards compliant compilers out there.
J# is just a compiler that compiles real Java to .Net IML with minimal changes to the code. It's basically a (probably) poorly supported language designed as a stepstone from Java to C# (as if there was the need for one :rolleyes: )
also J#.NET isnt a new language..u can download if off MS site lol..it has been around about a year ago lol
J# may follow the same path as J++ - dommed language.
What is meant was that it is relatively new and that VS.NET 2003 will have full support for it.Quote:
Originally posted by PT Exorcist
also J#.NET isnt a new language..u can download if off MS site lol..it has been around about a year ago lol
-- Ethan --
C# is quite easy to explain.. it's an OOP language that uses the .NET framework. It bears similarities to both C++ and Java in terms of syntax. As an extra twist though (and good thing), it provides the Rapid Application Development (RAD) that only VB used to offer (now all .NET languages do).
yes, i wanna see how c++.net will be with windows form designer..will it be worth moving from C# to c++.net?
VB.NET does not support Multiple Inheritance for instance ... So really its not fully OOPs yet. There are more things that are missing from VB.NET ...Quote:
Originally posted by Pirate
another lie here :p! VB.NET is fully OOP . Every .NET Control(Forms, buttons, listboxes ...etc) is considered to be an separate object itself . So when we run VB.NET for example we are working in an OOP environment .
What like ?Quote:
Originally posted by techyspecy
VB.NET does not support Multiple Inheritance for instance ... So really its not fully OOPs yet. There are more things that are missing from VB.NET ...
When I said it , I mean it techyspecy !!! Anyways , Look at this ...
after reading this thread im seriously considering switching from .net to GCC.
What the hell is that ?:rolleyes:Quote:
Originally posted by WiKiDJeFF
after reading this thread im seriously considering switching from .net to GCC.
GCC is the GNU Compiler Collection. When people refer to GCC they usually mean the c/c++ compiler. Maybe he meant "switch to c/c++."
Thanks sunburnt ,
I thought MS just released new language other than C# . In any case , I wonder why would someone drop away things before they try them out .:rolleyes:
I already know C++ and it is my favorite language by far. I meant switching compilers and instead of using .net I would use GNUs command line version. IMO DOS is still the best OS simply because it has the best color scheme.
Visual Studio .NET 2003 will be just like the current VS.NET in that no one is forcing you to use the managed extensions for c++. And as previously mentioned in this thread (i think), it will be one of the most ISO compliant compilers out there. Not a bad thing :D