Re: Usage of "auto". What for?
On May 9, 11:32 am, "nospam_n...@wanano.net"
<Torsten.Reich...@wanano.net> wrote:
I currently get asked about my usage of "auto". What is it for?
The keyword is clearly superflous here.
In contrast to the huge majority of C/C++ developers I write
definitions very explicitly like that:
int main(char argc, char *argv[], char *env[]) {
try {
auto Exception mainException(1);
mainException.setErrNo(42);
} catch (Exception caughtException) {
std::cout << "caught caughtException:" << caughtException.errNo <<
std::endl;
}
}
Of course you do not need the keyword auto to make the program
compile, link and run.
On the other hand, you (more clearly parsers) gain easy information
about where definitions are made !
As a plain developer reading his C++ file in an editor with the
indention used above it is mor ease to remember, that the auto
variables will be deconstructed, when going out of scope.
The other thing is, that you can use code parsers more easily to
process ascpects of variable usage for example.
It's a very good idea per se. It just has one major problem: no
one is using it. The result is that anyone reading your code
will wonder what is going on. It should have been required from
the beginning, in C. Or rather, C should have defined a
declaration syntax that was clear, and which worked, rather than
the mess we've inherited. But it's far too late to change that
now.
--
James Kanze (GABI Software) email:james.kanze@gmail.com
Conseils en informatique orient=E9e objet/
Beratung in objektorientierter Datenverarbeitung
9 place S=E9mard, 78210 St.-Cyr-l'=C9cole, France, +33 (0)1 30 23 00 34