Re: Const structure pointer as template argument
Re: Const structure pointer as template argument
- Subject: Re: Const structure pointer as template argument
- From: Ladd Van Tol <email@hidden>
- Date: Fri, 30 Jun 2006 09:05:16 -0700
On Jun 30, 2006, at 1:55 AM, Paul Walmsley wrote:
Unless you're trying to do something very subtle, I reckon that
this is
really what you wanted to do:
struct testStruct
{
long a;
};
template <class T> class Helper
{
};
testStruct nonConstTestStruct = {0};
Helper<testStruct*> HelperNonConst;
const testStruct constTestStruct = {0};
Helper<const testStruct*> HelperConst;
Nope, the code in question needs the actual instance.
If you had a need to pass a const or non-const pointer into the Helper
so that it references a testStruct, then change the definition to
this:
template <class T> class Helper
{
Helper(T object) : myObject(object) {};
T myObject;
};
const testStruct constTestStruct = {0};
Helper<const testStruct*> HelperConst(&constTestStruct);
Yes, this is how I would have written it, but it's a large legacy
source base, and changing it is not an option.
Also, the construct I described appears to compile in CodeWarrior and
Visual Studio. Not always the best indicator of standards compliance,
but there you have it.
- Ladd
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden