Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> So now using const is some kind of difficult task? Not much cognitive overhead there. I thought everyone was onboard with immutability these days.

The fact that if you make everything totally immutable you can write safe C++ is (a) not true; (b) even if it were true, a totally irrelevant point in practice since not everything can be immutable. "C++ is memory-safe if you don't mutate anything anywhere" is a completely uninteresting point to the real world (even if it were true).

> My point is that safe low-overhead data structures with non-dangling, pointers protected from nullptr dereferencing ARE possible in C++ and not Rust. Yes, you have to put const after every type. Call that vigilance if you want. It's a really small price to pay IMO.

No, it's completely wrong. You have no protection from dangling references in C++.



> No, it's completely wrong. You have no protection from dangling references in C++.

I'd love to see an example without globals or an undefined behavior factory function.


A "factory function" is just a function. Unless you have some way of statically distinguishing "factory functions" from functions, you are now arguing "you can write safe C++ if you make all your data immutable and you don't use functions". Besides the fact that this is not true (consider the destruction order for rvalues), how is this a statement that is possibly relevant to the real world?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: