this post was submitted on 13 Nov 2024
1695 points (96.1% liked)

Technology

59370 readers
3921 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
1695
submitted 2 days ago* (last edited 22 hours ago) by [email protected] to c/[email protected]
 

That’s all.

EDIT: Thank you all for detailing your experience with, and hatred for, this miserable product. Your display of solidarity is inspiring. Now, say it with me:

Fuck Microsoft

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 1 points 5 hours ago* (last edited 5 hours ago) (1 children)

Sure you can, it’s the same in C# as it would be in C++ if you did a=b, where a and b are both pointers.

You don’t want to copy the full data of a class around every time you use it, that would have extremely poor performance. If you do want that behaviour, use structs instead of classes. If you need to clone a class for whatever reason, you can do that too, but it’s not really something that you should need to do all that often.

I don’t think you should really jump in and call something crappy if you just don’t really know how to use it, personally!

[–] [email protected] 1 points 2 hours ago

In C++ you have the choice, the compiler makes the shallow copy (you know what that is right?) automatically if needed, or you can move around the pointer or a ref. Or, transform the shallow copy into a deep copy if you need that.

In c# you don't even not have the choice, ints etc gets copied but classes aren't. Where's the logic behind that?

And as so many others you scramble to find some excuse that "you should probably not do that very often anyways" or some other bullshit.

I heard all that 20 years ago when it actually had some merit for people trying to run it on the old crappy hardware of the day, today it's just moot.

Need speed or low memory usage? Learn to code in C/C++ for example. Heard Rust is great too.

C# is just an old wonky language.

/Rant off