|
|
|
|
|
by billconan
3805 days ago
|
|
Sorry, I don't get it. the example you gave is like the following c++ code: XXX *object = null; if ((object = anotherpointer) != NULL) {
...
} The point is, ! is only useful, when it can detect null pointers during compiling time. but it doesn't. the way ! is used, as suggested by your example, is also doable in C++, it is just a habit thing. in c++, with good habit, you won't have problem. in Swift with bad habit, you will have the same problem. then what good is !, |
|
! is there for the small number of cases where that's not possible. And it makes it much more obvious where you've got a potential problem, because the '!' is a literal code smell. You can't really do that with c++.