comp.lang.c++
http://groups.google.com/group/comp.lang.c++?hl=en
comp.lang.c++@googlegroups.com
Today's topics:
* Address one past the end of array - is this syntax a valid C++? - 3 messages,
3 authors
http://groups.google.com/group/comp.lang.c++/t/3660f2b84a4f1cb3?hl=en
* Boost - 14 messages, 4 authors
http://groups.google.com/group/comp.lang.c++/t/81738d66827a11c8?hl=en
* Getting Started with a Visual Studio C++ 2013 IDE - 6 messages, 4 authors
http://groups.google.com/group/comp.lang.c++/t/6af661da9c3466bf?hl=en
* Meaning of ~0 - 2 messages, 2 authors
http://groups.google.com/group/comp.lang.c++/t/49b86d4e311b7a5f?hl=en
* Overloaded function template with different return types - 1 messages, 1
author
http://groups.google.com/group/comp.lang.c++/t/a4fb484d72da3e8b?hl=en
==============================================================================
TOPIC: Address one past the end of array - is this syntax a valid C++?
http://groups.google.com/group/comp.lang.c++/t/3660f2b84a4f1cb3?hl=en
==============================================================================
== 1 of 3 ==
Date: Sat, Feb 1 2014 9:23 am
From: Peter
Assume we have an array:
int arr[5];
It's legal to refer to address arr + 5, but, of course, illegal to refer to element arr[5] as it's not part of the array. However, arr + n is equivalent to &arr[n]. My question is: does this equivalence also hold for an edge case of
n = 5 (or, generally, n equal to number of elements of array)?
While there's nothing wrong with arr + 5, &arr[5] looks highly suspicious: it looks like in the first step arr[5] is evaluated (which introduces an undefined behaviour) which would mean the expression as a whole is undefined. Does the equivalence still hold in this special case?
== 2 of 3 ==
Date: Sat, Feb 1 2014 2:36 pm
From: Victor Bazarov
On 2/1/2014 12:23 PM, Peter wrote:
> Assume we have an array:
>
> int arr[5];
>
> It's legal to refer to address arr + 5, but, of course, illegal to
> refer to element arr[5] as it's not part of the array. However, arr +
> n is equivalent to &arr[n]. My question is: does this equivalence
> also hold for an edge case of n = 5 (or, generally, n equal to number
> of elements of array)?
>
> While there's nothing wrong with arr + 5, &arr[5] looks highly
> suspicious: it looks like in the first step arr[5] is evaluated
> (which introduces an undefined behaviour) which would mean the
> expression as a whole is undefined. Does the equivalence still hold
> in this special case?
I would not be surprised at the validity of this after I've learned that
initializing a reference by dereferencing a null pointer is now legal.
*nullptr creates a special kind of reference, and the only useful
operation you can do with it is to take its address, which in turn
should give you null, as I understand it. So, using the same logic, the
expression a[n] is the same as *(a+n), which is to give you a reference
to a non-existing element (one beyond the last in the array) and with
that reference the only valid operation is to take its address.
According to the precedence rules, &arr[5] is evaluated as &(*(arr+5)),
which is OK (if you subscribe to the invalid reference idea and the
validity of applying the 'address of' operator to it).
V
--
I do not respond to top-posted replies, please don't ask
== 3 of 3 ==
Date: Sat, Feb 1 2014 3:33 pm
From: Mr Flibble
On 01/02/2014 22:36, Victor Bazarov wrote:
> On 2/1/2014 12:23 PM, Peter wrote:
>> Assume we have an array:
>>
>> int arr[5];
>>
>> It's legal to refer to address arr + 5, but, of course, illegal to
>> refer to element arr[5] as it's not part of the array. However, arr +
>> n is equivalent to &arr[n]. My question is: does this equivalence
>> also hold for an edge case of n = 5 (or, generally, n equal to number
>> of elements of array)?
>>
>> While there's nothing wrong with arr + 5, &arr[5] looks highly
>> suspicious: it looks like in the first step arr[5] is evaluated
>> (which introduces an undefined behaviour) which would mean the
>> expression as a whole is undefined. Does the equivalence still hold
>> in this special case?
>
> I would not be surprised at the validity of this after I've learned that
> initializing a reference by dereferencing a null pointer is now legal.
> *nullptr creates a special kind of reference, and the only useful
> operation you can do with it is to take its address, which in turn
> should give you null, as I understand it. So, using the same logic, the
> expression a[n] is the same as *(a+n), which is to give you a reference
> to a non-existing element (one beyond the last in the array) and with
> that reference the only valid operation is to take its address.
> According to the precedence rules, &arr[5] is evaluated as &(*(arr+5)),
> which is OK (if you subscribe to the invalid reference idea and the
> validity of applying the 'address of' operator to it).
Bullshit mate; dereferencing null pointers is UB.
/Flibble
==============================================================================
TOPIC: Boost
http://groups.google.com/group/comp.lang.c++/t/81738d66827a11c8?hl=en
==============================================================================
== 1 of 14 ==
Date: Sat, Feb 1 2014 9:52 am
From: Jorgen Grahn
On Fri, 2014-01-31, woodbrian77@gmail.com wrote:
> On Monday, January 27, 2014 5:55:11 AM UTC-6, Jorgen Grahn wrote:
>>
>> Personally I suspect a (possibly gzipped) text stream is good enough
>> almost all the time.
>
> What about streaming video?
No. But it seems to me that's a different problem compared to the
ones discussed so far.
/Jorgen
--
// Jorgen Grahn <grahn@ Oo o. . .
\X/ snipabacken.se> O o .
== 2 of 14 ==
Date: Sat, Feb 1 2014 10:34 am
From: woodbrian77@gmail.com
On Saturday, February 1, 2014 10:52:21 AM UTC-6, Dombo wrote:
> Op 01-Feb-14 17:16, woodbrian77@gmail.com schreef:
>
> > On Saturday, February 1, 2014 8:02:27 AM UTC-6, Dombo wrote:
>
> >>
> I'd hardly call that pioneering.
>
>
> > Most of what they say in terms of
> > marketing their service is also true of the C++
> > Middleware Writer.
>
> Springfuse makes rather generic claims, the kind of marketing speak one
> expects for just about any software development tool. And above all it
> still not answers the questions how your product differentiates itself
> from competing, well established, solutions.
>
There are more specifics here
http://webEbenezer.net/comparison.html
.
>
> > 10 years ago there was some doubt about the
> > path, but I don't think there's any doubt today.
> > On line code generation is here to stay.
>
>
> Ask yourself what is the benefit of online code generation for the
> client.
Longevity is an important factor. Users need
tools that will outlast their projects. Unlike
most of our competitors, we have a business model
that's based on on line code generation. "A fool
with a plan can outsmart a genius with no plan."
T. Boone Pickens
I get the feeling some are surprised by how a
small company like Ebenezer Enterprises is
able to outsmart bigger comptetitors.
Recall the story of David against Goliath.
David, using a new technology, took down
the more established Goliath. Is on line
code generation the new slingshot?
> If it is the only option for code generation it would be a
> considered to be a serious disadvantage by many because:
> 1. It undesirable to make your build process dependant on some external
> service not under your own control;
> 2. But more importantly...what if the company that provides the online
> service goes out of business or just decides to pull the plug?
Sorry if you don't like it, but this is the
way things are headed. Ebenezer Enterprises
is in better shape today than ever. This is
from our website:
I'm willing to donate 15 hours/week for six months
to a project that uses the C++ Middleware Writer.
Also I'll pay $500 and give a $1,000 investment in
Ebenezer Enterprises to someone who helps me find
someone interested in this. I'll pay the $500
after working for four months on the project.
Ebenezer Enteprises works to reward investments to
3 times their original amount. So the investment
would result in between $0 and $3,000, depending
on how things go for the company.
----------------------------------------------
We make that offer to help people overcome fears
they may have about working with a small company
to provide a service. We'll hold your hand and
help you build the software you want to build.
Brian
Ebenezer Enterprises - In G-d we trust.
http://webEbenezer.net
== 3 of 14 ==
Date: Sat, Feb 1 2014 10:54 am
From: woodbrian77@gmail.com
On Saturday, February 1, 2014 12:34:29 PM UTC-6, woodb...@gmail.com wrote:
> On Saturday, February 1, 2014 10:52:21 AM UTC-6, Dombo wrote:
> > Ask yourself what is the benefit of online code generation for the
> > client.
>
> Longevity is an important factor.
Another factor is simplifying the development
process. Some competitors expect you to
download huge libraries and maintain them.
"Oops. Sorry, there's a bug in such and such.
Please patch your install ..."
With on line code generation, we maintain the
installs (versions) for you. So there's no more
wondering if there's a fix you don't know about
or if your installation has been corrupted due
to a patching error or incompetence.
Brian
Ebenezer Enterprises - So far G-d has helped us.
http://webEbenezer.net
== 4 of 14 ==
Date: Sat, Feb 1 2014 10:57 am
From: Dombo
Op 01-Feb-14 19:34, woodbrian77@gmail.com schreef:
> On Saturday, February 1, 2014 10:52:21 AM UTC-6, Dombo wrote:
>>> 10 years ago there was some doubt about the
>>> path, but I don't think there's any doubt today.
>>> On line code generation is here to stay.
>>
>>
>> Ask yourself what is the benefit of online code generation for the
>> client.
>
> Longevity is an important factor. Users need
> tools that will outlast their projects. Unlike
> most of our competitors, we have a business model
> that's based on on line code generation.
Longevity of the tools is exactly the reason is why relying on some
online tool is generally not a good idea for the reasons I stated in my
previous post. Again: what is the benefit of online code generation for
the client?
> I get the feeling some are surprised by how a
> small company like Ebenezer Enterprises is
> able to outsmart bigger comptetitors.
> Recall the story of David against Goliath.
> David, using a new technology, took down
> the more established Goliath. Is on line
> code generation the new slingshot?
I've seen very little to suggest that you are outsmarting anyone.
>> If it is the only option for code generation it would be a
>> considered to be a serious disadvantage by many because:
>> 1. It undesirable to make your build process dependant on some external
>> service not under your own control;
>> 2. But more importantly...what if the company that provides the online
>> service goes out of business or just decides to pull the plug?
>
> Sorry if you don't like it, but this is the
> way things are headed. Ebenezer Enterprises
> is in better shape today than ever. This is
> from our website:
>
> I'm willing to donate 15 hours/week for six months
> to a project that uses the C++ Middleware Writer.
>
> Also I'll pay $500 and give a $1,000 investment in
> Ebenezer Enterprises to someone who helps me find
> someone interested in this. I'll pay the $500
> after working for four months on the project.
> Ebenezer Enteprises works to reward investments to
> 3 times their original amount. So the investment
> would result in between $0 and $3,000, depending
> on how things go for the company.
That sounds more like a desperate company to me than a company in good
shape. Add to that an amateurish website. Not the kind of company you
would want to rely on to provide some online service.
== 5 of 14 ==
Date: Sat, Feb 1 2014 11:27 am
From: Dombo
Op 01-Feb-14 19:54, woodbrian77@gmail.com schreef:
> On Saturday, February 1, 2014 12:34:29 PM UTC-6, woodb...@gmail.com wrote:
>> On Saturday, February 1, 2014 10:52:21 AM UTC-6, Dombo wrote:
>
>>> Ask yourself what is the benefit of online code generation for the
>>> client.
>>
>> Longevity is an important factor.
>
> Another factor is simplifying the development
> process. Some competitors expect you to
> download huge libraries and maintain them.
> "Oops. Sorry, there's a bug in such and such.
> Please patch your install ..."
At least the client has the option to decided whether or not to install
the patch or not. There is always a risk with updates, updates not only
fix bugs but quite often also introduce new bugs. If you are not
affected by the bugs that are supposedly fixed and your project is in a
critical phase, one might want to postpone the update.
In pretty much every place I've worked it would be absolutely
unacceptable for development tools to automatically update themselves.
> With on line code generation, we maintain the
> installs (versions) for you. So there's no more
> wondering if there's a fix you don't know about
> or if your installation has been corrupted due
> to a patching error or incompetence.
In other words your client can't be sure they are able to generate
exactly the same code as before, which is quite important consideration
with configuration management. And gets even worse when the external
update accidentally introduced a bug. In that case code that worked
before can suddenly stop working, and there is nothing your client can
do about it since there is no way for you client to rollback to a
previous version of your tool.
== 6 of 14 ==
Date: Sat, Feb 1 2014 11:36 am
From: Ian Collins
Dombo wrote:
> Op 01-Feb-14 19:54, woodbrian77@gmail.com schreef:
>>
>> Another factor is simplifying the development
>> process. Some competitors expect you to
>> download huge libraries and maintain them.
>> "Oops. Sorry, there's a bug in such and such.
>> Please patch your install ..."
>
> At least the client has the option to decided whether or not to install
> the patch or not. There is always a risk with updates, updates not only
> fix bugs but quite often also introduce new bugs. If you are not
> affected by the bugs that are supposedly fixed and your project is in a
> critical phase, one might want to postpone the update.
>
> In pretty much every place I've worked it would be absolutely
> unacceptable for development tools to automatically update themselves.
>
>> With on line code generation, we maintain the
>> installs (versions) for you. So there's no more
>> wondering if there's a fix you don't know about
>> or if your installation has been corrupted due
>> to a patching error or incompetence.
>
> In other words your client can't be sure they are able to generate
> exactly the same code as before, which is quite important consideration
> with configuration management. And gets even worse when the external
> update accidentally introduced a bug. In that case code that worked
> before can suddenly stop working, and there is nothing your client can
> do about it since there is no way for you client to rollback to a
> previous version of your tool.
That would be a killer for any software that has to undergo any form of
certification process. Even where certification isn't a requirement,
customers often stick with a specific release and require support and
updates to that release. Just about every project I've worked on
required the tools to be archived to enable us to recreate a specific
drop when required.
--
Ian Collins
== 7 of 14 ==
Date: Sat, Feb 1 2014 12:22 pm
From: woodbrian77@gmail.com
On Saturday, February 1, 2014 1:36:25 PM UTC-6, Ian Collins wrote:
> Dombo wrote:
>
> > In other words your client can't be sure they are able to generate
> > exactly the same code as before, which is quite important consideration
> > with configuration management. And gets even worse when the external
> > update accidentally introduced a bug. In that case code that worked
> > before can suddenly stop working, and there is nothing your client can
> > do about it since there is no way for you client to rollback to a
> > previous version of your tool.
>
> That would be a killer for any software that has to undergo any form of
> certification process. Even where certification isn't a requirement,
> customers often stick with a specific release and require support and
> updates to that release. Just about every project I've worked on
> required the tools to be archived to enable us to recreate a specific
> drop when required.
>
I think you're missing the plural I used in installs and
versions. There's only one version available at this
time, but if needed we'll support more than one version.
It looks like Springfuse only supports one version also
at this time...
Brian
Ebenezer Enterprises - In G-d we trust.
http://webEbenezer.net
== 8 of 14 ==
Date: Sat, Feb 1 2014 1:11 pm
From: woodbrian77@gmail.com
I'm not aware of any search related companies that
have opened up their search process. Well, I guess
DuckduckOn Saturday, February 1, 2014 12:57:21 PM UTC-6, Dombo wrote:
> Op 01-Feb-14 19:34, woodbrian77@gmail.com schreef:
>
> >
>
> > Longevity is an important factor. Users need
> > tools that will outlast their projects. Unlike
> > most of our competitors, we have a business model
> > that's based on on line code generation.
>
> Longevity of the tools is exactly the reason is why relying on some
> online tool is generally not a good idea for the reasons I stated in my
> previous post. Again: what is the benefit of online code generation for
> the client?
>
Are you using an open source search engine?
>
>
> > I get the feeling some are surprised by how a
> > small company like Ebenezer Enterprises is
> > able to outsmart bigger comptetitors.
> > Recall the story of David against Goliath.
> > David, using a new technology, took down
> > the more established Goliath. Is on line
> > code generation the new slingshot?
>
> I've seen very little to suggest that you are outsmarting anyone.
>
I'm not sure where you've looked.
Some "successful" companies like Southwest Airlines
and Facebook have had to learn the hard way that
the languages they were using didn't scale well.
I've been using C++ from the beginning. Work done
on the foundation may not be easy to notice, but it
provides for the long term future of the company.
Feel free to examine the software here
http://webEbenezer.net/build_integration.html
> >
>
> > Sorry if you don't like it, but this is the
> > way things are headed. Ebenezer Enterprises
> > is in better shape today than ever. This is
> > from our website:
> >
>
> > I'm willing to donate 15 hours/week for six months
> > to a project that uses the C++ Middleware Writer.
> >
> > Also I'll pay $500 and give a $1,000 investment in
> > Ebenezer Enterprises to someone who helps me find
> > someone interested in this. I'll pay the $500
> > after working for four months on the project.
> > Ebenezer Enteprises works to reward investments to
> > 3 times their original amount. So the investment
> > would result in between $0 and $3,000, depending
> > on how things go for the company.
>
> That sounds more like a desperate company to me than a company in good
> shape. Add to that an amateurish website. Not the kind of company you
> would want to rely on to provide some online service.
I acknowledge the website could be better and the
documentation also. I've been asking for ideas on
how to improve that. If you have some specific
ideas on that, please let me know.
Beggars can't be choosers as far as who they are going
to rely on. If you are drowning and someone offers
to help you, are you going to turn them down if they
don't have a lifeguard certification?
I'm willing to help a company get their mojo back.
Brian
Ebenezer Enterprises - John 3:16.
http://webEbenezer.net
== 9 of 14 ==
Date: Sat, Feb 1 2014 1:52 pm
From: woodbrian77@gmail.com
On Saturday, February 1, 2014 1:27:51 PM UTC-6, Dombo wrote:
> Op 01-Feb-14 19:54, woodbrian77@gmail.com schreef:
>
> > On Saturday, February 1, 2014 12:34:29 PM UTC-6, woodb...@gmail.com wrote:
>
> At least the client has the option to decided whether or not to install
> the patch or not. There is always a risk with updates, updates not only
> fix bugs but quite often also introduce new bugs. If you are not
> affected by the bugs that are supposedly fixed and your project is in a
> critical phase, one might want to postpone the update.
I'm afraid the lack of choice here is due to "leaders"
like Bill Gates and Obama. "If you like your plan,
you can keep your plan." "If you like your doctor,
you can keep your doctor." They lied and now your
options aren't what you wish they were? Shouldn't
have voted for Obama... Do you find a better option
than what I'm offering? As we get more users we'll
have more resources to improve the service.
>
> In pretty much every place I've worked it would be absolutely
> unacceptable for development tools to automatically update themselves.
>
> > With on line code generation, we maintain the
> > installs (versions) for you. So there's no more
> > wondering if there's a fix you don't know about
> > or if your installation has been corrupted due
> > to a patching error or incompetence.
>
>
> In other words your client can't be sure they are able to generate
> exactly the same code as before, which is quite important consideration
> with configuration management. And gets even worse when the external
> update accidentally introduced a bug. In that case code that worked
> before can suddenly stop working, and there is nothing your client can
> do about it since there is no way for you client to rollback to a
> previous version of your tool.
I think you missed my talking about installs and versions
plural. If there's support for it, multiple versions will
be available.
Brian
Ebenezer Enterprises - "To G-d be the glory."
http://webEbenezer.net
== 10 of 14 ==
Date: Sat, Feb 1 2014 2:20 pm
From: Ian Collins
woodbrian77@gmail.com wrote:
> On Saturday, February 1, 2014 1:36:25 PM UTC-6, Ian Collins wrote:
>> Dombo wrote:
>>
>>> In other words your client can't be sure they are able to generate
>>> exactly the same code as before, which is quite important consideration
>>> with configuration management. And gets even worse when the external
>>> update accidentally introduced a bug. In that case code that worked
>>> before can suddenly stop working, and there is nothing your client can
>>> do about it since there is no way for you client to rollback to a
>>> previous version of your tool.
>>
>> That would be a killer for any software that has to undergo any form of
>> certification process. Even where certification isn't a requirement,
>> customers often stick with a specific release and require support and
>> updates to that release. Just about every project I've worked on
>> required the tools to be archived to enable us to recreate a specific
>> drop when required.
>>
>
> I think you're missing the plural I used in installs and
> versions. There's only one version available at this
> time, but if needed we'll support more than one version.
> It looks like Springfuse only supports one version also
> at this time...
That still wouldn't help in the situations I'm familiar with. A
technique one of my clients uses is to build their release software in a
VM and then snapshot and archive the machine. They need to know that
they can recreate any release in a reliable, reproducible, manner. You
would have to tie yourself up in all sorts of legal knots to meet their
requirements...
--
Ian Collins
== 11 of 14 ==
Date: Sat, Feb 1 2014 2:31 pm
From: woodbrian77@gmail.com
On Saturday, February 1, 2014 4:20:15 PM UTC-6, Ian Collins wrote:
> That still wouldn't help in the situations I'm familiar with. A
> technique one of my clients uses is to build their release software in a
> VM and then snapshot and archive the machine. They need to know that
> they can recreate any release in a reliable, reproducible, manner. You
> would have to tie yourself up in all sorts of legal knots to meet their
> requirements...
>
They could store code generated by the C++ Middleware
Writer if they wanted to.
== 12 of 14 ==
Date: Sat, Feb 1 2014 2:44 pm
From: Ian Collins
woodbrian77@gmail.com wrote:
> On Saturday, February 1, 2014 4:20:15 PM UTC-6, Ian Collins wrote:
>
>> That still wouldn't help in the situations I'm familiar with. A
>> technique one of my clients uses is to build their release software in a
>> VM and then snapshot and archive the machine. They need to know that
>> they can recreate any release in a reliable, reproducible, manner. You
>> would have to tie yourself up in all sorts of legal knots to meet their
>> requirements...
>>
>
>
> They could store code generated by the C++ Middleware
> Writer if they wanted to.
That wouldn't help when a customer with a 10 year old system asks for a fix!
Anyway, the market segments I'm familiar with are probably at the more
paranoid end of the spectrum when it comes to tools. I'm sure the
majority of potential customers are more open minded when it comes to
web based tools. Just be aware of another issue I'm seeing more often:
customers wanting to know if their data will go anywhere near the US!
--
Ian Collins
== 13 of 14 ==
Date: Sat, Feb 1 2014 3:46 pm
From: woodbrian77@gmail.com
On Saturday, February 1, 2014 4:44:57 PM UTC-6, Ian Collins wrote:
> woodbrian77@gmail.com wrote:
>
> >>
> > They could store code generated by the C++ Middleware
> > Writer if they wanted to.
>
> That wouldn't help when a customer with a 10 year old system asks for a fix!
>
A company could ask us to store a particular version.
If we know about it, I don't see a problem with that.
There would be some administrative work around it, but
it doesn't seem like too big a deal. We'll automate
it if there's enough interest.
> Anyway, the market segments I'm familiar with are probably at the more
> paranoid end of the spectrum when it comes to tools. I'm sure the
> majority of potential customers are more open minded when it comes to
> web based tools. Just be aware of another issue I'm seeing more often:
> customers wanting to know if their data will go anywhere near the US!
>
Other countries spy.
I would like to see the NSA's budget cut by half.
The IRS should be chopped back too.
Brian
Ebenezer Enterprises
http://webEbenezer.net
== 14 of 14 ==
Date: Sat, Feb 1 2014 4:25 pm
From: Ian Collins
woodbrian77@gmail.com wrote:
>
> There are more specifics here
>
> http://webEbenezer.net/comparison.html
Your examples return 1 from main on success, which isn't a good idea...
Use EXIT_SUCCESS and EXIT_FAILURE.
--
Ian Collins
==============================================================================
TOPIC: Getting Started with a Visual Studio C++ 2013 IDE
http://groups.google.com/group/comp.lang.c++/t/6af661da9c3466bf?hl=en
==============================================================================
== 1 of 6 ==
Date: Sat, Feb 1 2014 11:09 am
From: "W. eWatson"
On 1/31/2014 9:16 PM, Robert Wessel wrote:
> On Fri, 31 Jan 2014 20:28:55 -0800, "W. eWatson"
> <wolftracks@invalid.com> wrote:
>
>> I understand C++. What I'm looking for is how one operates the IDE
>> provided in VS C++ Desktop. What programming I've done usually does not
>> include a sophisticated IDE. I see FILE, EDIT,VIEW, DEBUG, etc. along
>> the top of the IDE. I'd like more details on these items. I would
>> suspect somewhere there's an explanation of them. Most manuals describe
>> them in the first 10 pages. Does a tutorial or manual that explains them
>> exist? It would be nice to see some examples of building a program and
>> compiling libraries for it.
>>
>> BTW, I've spent a lot of time today Googling VS introductions to IDEs,
>> but they never sync with the VS C++ 2013 product I have.
>
>
> While this is OT for the group, MS has lots of tutorials and samples.
> http://msdn.microsoft.com/en-us/library/jj620919.aspx looks like just
> what you're looking for.
>
Is there a NG for my question?
Been at that link, but it didn't help. I think there are just too many
variety of editions for Visual Studio.
I just installed 2010, and see there's a video in it for Beginner
Developers. Cleverly the title is for the 2008 Express Edition. A little
examination here shows me this isn't going to help me. Sigh!
== 2 of 6 ==
Date: Sat, Feb 1 2014 12:19 pm
From: Tobias Müller
"W. eWatson" <wolftracks@invalid.com> wrote:
> Been at that link, but it didn't help. I think there are just too many
> variety of editions for Visual Studio.
>
> I just installed 2010, and see there's a video in it for Beginner
> Developers. Cleverly the title is for the 2008 Express Edition. A little
> examination here shows me this isn't going to help me. Sigh!
From VS 2005 to VS 2010 there are only minor differences regarding the user
interface. Especially when it comes to the basic concepts. Most notable
improvements in VS 2010 are IMO the much better intellisense (on-the-fly
analysis for code completion, refactoring and navigation) and the profiler
that is available not only in team edition.
But for the first steps that probably not so relevant.
Tobi
== 3 of 6 ==
Date: Sat, Feb 1 2014 2:42 pm
From: Victor Bazarov
On 2/1/2014 3:19 PM, Tobias Müller wrote:
> "W. eWatson" <wolftracks@invalid.com> wrote:
>> Been at that link, but it didn't help. I think there are just too many
>> variety of editions for Visual Studio.
>>
>> I just installed 2010, and see there's a video in it for Beginner
>> Developers. Cleverly the title is for the 2008 Express Edition. A little
>> examination here shows me this isn't going to help me. Sigh!
>
> From VS 2005 to VS 2010 there are only minor differences regarding the user
> interface. Especially when it comes to the basic concepts. Most notable
> improvements in VS 2010 are IMO the much better intellisense (on-the-fly
> analysis for code completion, refactoring and navigation) and the profiler
> that is available not only in team edition.
> But for the first steps that probably not so relevant.
To answer a question in another post, no, there is no NG for it (not an
active one anyway).
I recommend getting a book. Something in line with "Visual Studio for
Dummies". They are usually well written (not that I've read any, but I
heard many people's praises) without condescension and full of easy
explanations on how to accomplish some simple tasks, which should give
the OP at least some handle on the product.
As with any other complex tool, ease comes with practice. So, start by
doing what the book says, and then try repeating those (usually simple)
steps with some variations.
V
--
I do not respond to top-posted replies, please don't ask
== 4 of 6 ==
Date: Sat, Feb 1 2014 2:56 pm
From: "Rick C. Hodgin"
On Friday, January 31, 2014 11:28:55 PM UTC-5, W. eWatson wrote:
> I understand C++. What I'm looking for is how one operates the IDE
> provided in VS C++ Desktop. What programming I've done usually does not
> include a sophisticated IDE. I see FILE, EDIT,VIEW, DEBUG, etc. along
> the top of the IDE. I'd like more details on these items. I would
> suspect somewhere there's an explanation of them. Most manuals describe
> them in the first 10 pages. Does a tutorial or manual that explains them
> exist? It would be nice to see some examples of building a program and
> compiling libraries for it.
>
> BTW, I've spent a lot of time today Googling VS introductions to IDEs,
> but they never sync with the VS C++ 2013 product I have.
There is an add-on utility I would recommend. It's called "Visual Assist X"
and it's made by Whole Tomato (www.wholetomato.com). It will augment your
editing experience to provide many features that are natively lacking in the
Visual Studio IDE environment.
Best regards,
Rick C. Hodgin
== 5 of 6 ==
Date: Sat, Feb 1 2014 5:31 pm
From: "W. eWatson"
On 2/1/2014 2:42 PM, Victor Bazarov wrote:
> On 2/1/2014 3:19 PM, Tobias Müller wrote:
>> "W. eWatson" <wolftracks@invalid.com> wrote:
>>> Been at that link, but it didn't help. I think there are just too many
>>> variety of editions for Visual Studio.
>>>
>>> I just installed 2010, and see there's a video in it for Beginner
>>> Developers. Cleverly the title is for the 2008 Express Edition. A little
>>> examination here shows me this isn't going to help me. Sigh!
>>
>> From VS 2005 to VS 2010 there are only minor differences regarding
>> the user
>> interface. Especially when it comes to the basic concepts. Most notable
>> improvements in VS 2010 are IMO the much better intellisense (on-the-fly
>> analysis for code completion, refactoring and navigation) and the
>> profiler
>> that is available not only in team edition.
>> But for the first steps that probably not so relevant.
>
> To answer a question in another post, no, there is no NG for it (not an
> active one anyway).
>
> I recommend getting a book. Something in line with "Visual Studio for
> Dummies". They are usually well written (not that I've read any, but I
> heard many people's praises) without condescension and full of easy
> explanations on how to accomplish some simple tasks, which should give
> the OP at least some handle on the product.
>
> As with any other complex tool, ease comes with practice. So, start by
> doing what the book says, and then try repeating those (usually simple)
> steps with some variations.
>
> V
I drove down to my local Barnes and Noble bookstore this afternoon.
It's45 miles from here. I found about six C++ books, They pretty much
off handed remarked about the IDE. One was probably the Dummies (2010)
book you mentioned. It briefly mentioned IDE. There are about 10
versions of the Dummy books. Only two allow "Look Inside". Pretty
limited in what they allow to be read.
Well, I guess I just bounce around the IDE, and see if I can make any
sense of it. That plus some googling.
== 6 of 6 ==
Date: Sat, Feb 1 2014 6:11 pm
From: "Rick C. Hodgin"
On Saturday, February 1, 2014 8:31:59 PM UTC-5, W. eWatson wrote:
> I drove down to my local Barnes and Noble bookstore this afternoon.
> It's45 miles from here. I found about six C++ books, They pretty much
> off handed remarked about the IDE. One was probably the Dummies (2010)
> book you mentioned. It briefly mentioned IDE. There are about 10
> versions of the Dummy books. Only two allow "Look Inside". Pretty
> limited in what they allow to be read.
>
> Well, I guess I just bounce around the IDE, and see if I can make any
> sense of it. That plus some googling.
YouTube is a great resources. And it's (reasonably) free.
Best regards,
Rick C. Hodgin
==============================================================================
TOPIC: Meaning of ~0
http://groups.google.com/group/comp.lang.c++/t/49b86d4e311b7a5f?hl=en
==============================================================================
== 1 of 2 ==
Date: Sat, Feb 1 2014 4:06 pm
From: Old Wolf
I'm sure this would have been asked before, but Google can't
cope with searching for tilde, so...
What does ~0 evaluate to?
N2521 just says "The operand of ~ shall have integral or
enumeration type; the result is the one's complement of
its operand." without any further explanation.
Does it mean the value whose representation is all-bits-1 ?
What if this is a trap representation?
== 2 of 2 ==
Date: Sat, Feb 1 2014 5:19 pm
From: Richard Damon
On 2/1/14, 7:06 PM, Old Wolf wrote:
> I'm sure this would have been asked before, but Google can't
> cope with searching for tilde, so...
>
> What does ~0 evaluate to?
>
> N2521 just says "The operand of ~ shall have integral or
> enumeration type; the result is the one's complement of
> its operand." without any further explanation.
>
> Does it mean the value whose representation is all-bits-1 ?
> What if this is a trap representation?
>
The operation ~ is only defined for integral or unscoped enums (which
will also ultimately reduce to a integral type). For unsigned types, the
concept of a one's complement is well defined, being identical to the
value of MAX_INT - x (or what ever the max value of the type is), the C
standard actually gives this definition. For signed types, the bit by
bit definition still applies, but the "value" of the result will be
implementation defined (based mostly on the type of negative numbers the
machine uses) and may produce "trap" values.
In the case of all-bits-1 this is well defined for all 3 standard systems.
For two's complement it is -1
For one's complement it is -0
For Sign / Magnitude it is the most negative number of that type.
==============================================================================
TOPIC: Overloaded function template with different return types
http://groups.google.com/group/comp.lang.c++/t/a4fb484d72da3e8b?hl=en
==============================================================================
== 1 of 1 ==
Date: Sat, Feb 1 2014 5:57 pm
From: hbdevelop1@gmail.com
Hello all,
In functional\hash\hash.hpp in Boost ver. 1.54.0, there are many overloads of the template function hash_value where only the return type changes (see a snapshot of code at the end of this post).
1-
How does the compiler determine which version of the hash_value it should use in a call?
For example, for struct hash<unsigned int>::operator() it uses the version that returns boost::hash_detail::basic_numbers<T>::type.
Why ? What is the rule it applies ?
2-
How can I force the compiler to use a certain version of hash_value ?
Thank you very much in advance
----- code from boost\functional\hash\hash.hpp ------
namespace boost
{
namespace hash_detail
{
struct enable_hash_value { typedef std::size_t type; };
template <typename T> struct basic_numbers {};
template <typename T> struct long_numbers;
template <typename T> struct ulong_numbers;
...
template <> struct basic_numbers<unsigned int> :
boost::hash_detail::enable_hash_value {};
...
template <typename T> struct long_numbers2 {};
template <typename T> struct ulong_numbers2 {};
template <typename T> struct long_numbers : long_numbers2<T> {};
template <typename T> struct ulong_numbers : ulong_numbers2<T> {};
...
}
//version 1 of hash_value
template <typename T>
typename boost::hash_detail::basic_numbers<T>::type hash_value(T v)
{
return static_cast<std::size_t>(v);
}
//version 2 of hash_value
template <typename T>
typename boost::hash_detail::long_numbers<T>::type hash_value(T v)
{
return hash_detail::hash_value_signed(v);
}
//version 3 of hash_value
template <typename T>
typename boost::hash_detail::ulong_numbers<T>::type hash_value(T v)
{
return hash_detail::hash_value_unsigned(v);
}
...
template <> struct hash<unsigned int> :
public std::unary_function<unsigned int, std::size_t>
{
std::size_t operator()(unsigned int v) const
{
return boost::hash_value(v); //uses version 1 of hash_value
}
};
==============================================================================
You received this message because you are subscribed to the Google Groups "comp.lang.c++"
group.
To post to this group, visit http://groups.google.com/group/comp.lang.c++?hl=en
To unsubscribe from this group, send email to comp.lang.c+++unsubscribe@googlegroups.com
To change the way you get mail from this group, visit:
http://groups.google.com/group/comp.lang.c++/subscribe?hl=en
To report abuse, send email explaining the problem to abuse@googlegroups.com
==============================================================================
Google Groups: http://groups.google.com/?hl=en
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment