|
I create a CRealPoint class:
CRealPoint
{
public:
CRealPoint();
CRealPoint(double x=0; double y=0);
private:
double m_x;
double m_y;
public:
CRealPoint operator=(CRealPoint rPt);
}
then I have following code:
//
1. CArray <CRealPoint, CRealPoint> m_arrPo;
2. CRealPoint tmpPoint;
3. tmpPoint.m_x= // calculate here
4. tmpPoint.m_y=//
5. m_arrPo.Add(tmpPoint);
//
6. CRealPoint newPoint;
7. newPoint = m_arr.ElementAt(0);
// test value of newPoint.m_x, newPoint.m_y
It is lost data. I guess problem occur at line 5 or 7 but don't understand why and don't known how to solve this problem.
don't stop me now!!!
|
|
|
|
|
change these lines
1. CArray <CRealPoint,CRealPoint&> m_arrPo;
.
.
.
6 CRealPoint &newPoint = m_arr.ElementAt(0); // ElementAt return ref to ob
or
6 CRealPoint newPoint = m_arr.GetAt(0); // GetAt return ob and need copy constructor that ur class have it.
BTW.
CRealPoint newPoint = m_arr.ElementAt(0); is also correct
|
|
|
|
|
Hi All
have an MFC application i'm maintaining.. (VC++ 6.0)
It runs ok in debug mode.
But if i add a breakpoint anywhere inthe code, (yep a breakpoint - nothing else) when the debugger reaches the breakpoint when run the debugger throws
===
"Debug Assertion Failed!"
Program: Yadda.exe
File: afxtempl.h
Line 254
(etc etc etc)
[abort] [retry][Ignore]
==
Now, if the breakpoint is not present then the code does not throw an assertion
weirdness beyond the usual microsoft rubbish
has anyone run into this before and if so what I can do to fix this problem?
Presumably its a setting inthe project/vc 6
cheers
Bryce
---
To paraphrase Fred Dagg - the views expressed in this post are bloody good ones.
--
Publitor, making Pubmed easy.
http://www.sohocode.com/publitor
Our kids book :The Snot Goblin
|
|
|
|
|
This is somewhat of a long shot, but have you tried doing a Rebuild All? When the debugger is doing weird things a Rebuild All has fixed everything for me many times before.
|
|
|
|
|
yes i have tried a rebuild all and it is not of use
Bryce
---
To paraphrase Fred Dagg - the views expressed in this post are bloody good ones.
--
Publitor, making Pubmed easy.
http://www.sohocode.com/publitor
Our kids book :The Snot Goblin
|
|
|
|
|
turns out it was a WATCH window issue -
had the watch window accessing an array
removed it and shes all good
Bryce
---
To paraphrase Fred Dagg - the views expressed in this post are bloody good ones.
--
Publitor, making Pubmed easy.
http://www.sohocode.com/publitor
Our kids book :The Snot Goblin
|
|
|
|
|
Got any other threads running?
Every time I have seen something like this, or even exceptions (Access Violations) firing on each debugger step(!), it was due to a problem with the code that one of the (or a) background thread was running.
If so, I would look there for issues.
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Tip for new SUV drivers: Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|
|
|
turns out it was a WATCH window issue -
had the watch window accessing an array
removed it and shes all good
Bryce
---
To paraphrase Fred Dagg - the views expressed in this post are bloody good ones.
--
Publitor, making Pubmed easy.
http://www.sohocode.com/publitor
Our kids book :The Snot Goblin
|
|
|
|
|
So what's at line 254 of afxtempl.h ?
"Ideas are a dime a dozen. People who put them into action are priceless." - Unknown
|
|
|
|
|
AFX_INLINE TYPE CArray<type, arg_type="">::GetAt(int nIndex) const
{ ASSERT(nIndex >= 0 && nIndex < m_nSize);
return m_pData[nIndex]; }
the assertion,
which is just plain weird coz it doesnt matter where in the code i place my breakpoint
Bryce
---
To paraphrase Fred Dagg - the views expressed in this post are bloody good ones.
--
Publitor, making Pubmed easy.
http://www.sohocode.com/publitor
Our kids book :The Snot Goblin
|
|
|
|
|
What are the values of nIndex and m_nSize?
What does the call stack show you?
"You're obviously a superstar." - Christian Graus about me - 12 Feb '03
"Obviously ??? You're definitely a superstar!!!" mYkel - 21 Jun '04
Within you lies the power for good - Use it! Honoured as one of The Most Helpful Members of 2004
|
|
|
|
|
turns out it was a WATCH window issue -
had the watch window accessing an array
removed it and shes all good
Bryce
---
To paraphrase Fred Dagg - the views expressed in this post are bloody good ones.
--
Publitor, making Pubmed easy.
http://www.sohocode.com/publitor
Our kids book :The Snot Goblin
|
|
|
|
|
So are you using a CArray object?
|
|
|
|
|
turns out it was a WATCH window issue -
had the watch window accessing an array
removed it and shes all good
Bryce
---
To paraphrase Fred Dagg - the views expressed in this post are bloody good ones.
--
Publitor, making Pubmed easy.
http://www.sohocode.com/publitor
Our kids book :The Snot Goblin
|
|
|
|
|
I converted several projects from vs6.0 to vs7.0.
In vs6 I used html as my default help.
This morning I discovered that none of the solutions in vs7 use html help. Whenever I press on F1 I get a message box saying it can't find the *.hlp file, which is of course true since html uses a compiled help file.
My question is: what do I need to do in order to change all my vs7 solutions to use html help?
Thanks,
Ilan
|
|
|
|
|
First of all, I am very sorry that my poor English.
I have some question, how make excel automation with MFC (VC6.0, Excel 2000)
I want to input APP data to Excel program Of course, Excel program is running
Range range;
Borders borders;
range = sheet.GetRange(COleVariant("A1"), COleVariant("L6"));
borders = range.GetBorders();
borders.SetLineStyle(COleVariant((short)1));
This sample is applied to all cell ..
but I want only bold outline
plese help me....
reply to: lgs99@dreamwiz.com
thank you very much..
|
|
|
|
|
Just a suggestion: Start the macro recorder in Excel, then do what you want to do and look at the code the macro recorder has recorded.
MS
|
|
|
|
|
thanks..
but I want to just excel automation..
please example sourec...
|
|
|
|
|
Hi,
Can you please let me know how to use this for the given char array.
char recode[][5]={"bare","barn","bard","Dame","born","dare","BARN","barn","dame","bORn"};
I am trying doing this however it is giving exception in execution
qsort( (char *)recode, sizeof(recode), (strlen(recode[1])+1), (int (*)(const void*, const void*))compare );
and
(char **)bsearch( (char *) &key, (char *)recode, sizeof(recode),
(strlen(recode[1])+1), (int (*)(const void*, const void*))compare )
Thank
|
|
|
|
|
sizeof(recode) should be, sizeof(recode)/5
Another way would be:
int c( const void *e1, const void *e2 )
{
return( strcmp((const char*)e1, (const char*)e2) );
}
char* a[] = {"bare","barn","bard","Dame","born","dare","BARN","barn","dame","bORn"};
long i = -1,
l = sizeof(a[0]),
n = sizeof(a)/l;
qsort(a, n, l, c);
char *k = "bard",
**p = (char**)bsearch(&k, a, n, l, c);
if( p ) {
i = ((char*)p - (char*)a) / l;
i = p - a;
}
...cmk
Save the whales - collect the whole set
|
|
|
|
|
Thank for your input however following link error observed
error LNK2001: unresolved external symbol "int __cdecl compare(char * *,char * *)" (?compare@@YAHPAPAD0@Z)
|
|
|
|
|
You have to write a compare function for bsearch and qsort.
In my example this is int c( const void *e1, const void *e2 ) ...
...cmk
Save the whales - collect the whole set
|
|
|
|
|
yeah you are right but already did that
|
|
|
|
|
Thank's lot done forget to change earlier declaration
|
|
|
|