4 ms·
> What's the author's justification? What's your justification? I’m neither of them, but chances are that’s because you can’t make them left-to-right all the t
by Someone 2y ago
> What's the author's justification? What's your justification?
I’m neither of them, but chances are that’s because you can’t make them left-to-right all the time.
double const *foo; // foo is a pointer to a const double
double *const foo; // foo is a const pointer to a double
compile and do what the comment says; these do not compile:
* const double foo; // a pointer to a const double named “foo”
foo * const double; // foo is a pointer to a const double
- spc476 2y agoI use the "right-to-left" style myself. To me, the qualifier (in this case, const), applies to the item to the right. This could be confusing: const char *const ptr; The first const applies to the char, but the second one to the pointer itself. Being consistent: char const *const ptr; The first const applies to the item to its left---char. The second const applies to the item to its left---the pointer. To recap: char *ptr1; // modifiable pointer to modifiable data char const *ptr2; // modifiable pointer to const data char *const ptr3; // const pointer to modifiable data char const *const ptr4; // const pointer to const data