Re: argv[] comparison
* James Kanze:
On May 22, 1:57 pm, Gianni Mariani <gi3nos...@mariani.ws> wrote:
dave_mikes...@fastmail.fm wrote:
On May 21, 4:28 pm, "Alf P. Steinbach" <a...@start.no> wrote:
getting rid of the local variable 'test' and also the 'return 0' which
is implied (it's the default) in 'main', and just to make it extra
concise I also removed that darned 'else' which otherwise would use up a
very expensive line, and the keyword 'if' which is so much to read.
The OP's example was nothing like that. Conciseness does not
necessarily lead to obfuscation, your strawman notwithstanding.
I simply don't understand why so many programmers think conciseness is a
goal.
Nor I why so many tend to overcomplicate simple solutions to simple
problems.
They just end up not understanding their own code.
Same thing happens with over-engineered code.
std::vector is part of the standard.
std::string is part of the standard.
What about these is complex ?
There exists a minimum complexity. employing char * is usually bad news
and is prone to far more subtle complexity that is exemplified by the
OP's question.
Alf's code does more like what you would expect.
I think part of the point of Alf's code is that significant
parts of it will eventually end up in a library. For a quicky,
just using something like:
std::vector< std::string > args( argv + 1, argv + argc ) ;
is probably sufficient. But real programs have a tendancy to
grow, to acquire options, etc. And it's a lot easier to adopt
Alf's solution to these evolutions than something as primitive
as the above.
Well yes, right on. If I weren't so lazy I'd add it as a project
template in Visual Studio, or have it as a file I could copy. But I
just type it in manucally whenever I need a small tool for something
(perhaps I'm not lazy enough -- this bears thinking about!). Thought
I should share it, and I couldn't imagine that it would generate any
debate. And as mentioned, I think similar code is given in Accelerated
C++, presumably for the same reason: a simple, reusable skeleton for a
small toy program that needs to handle main arguments.
--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?