|
Hi I am new in c++. Recently I am converting a C++ project to Visual Studio 10 c++ . I am getting an error.
error C2664:
The code is:
XNodes::iterator _tagXMLNode::GetChildIterator( LPXNode node )
{
XNodes::iterator it = childs.begin();
for( ; it != childs.end() ; ++(it) )
{
if( *it == node )
return it;
}
return NULL;
}
How to fix it?
Thanks in advance,
Sai
|
|
|
|
|
Change from
Quote: return NULL; //error is in here
to
return it;
Veni, vidi, vici.
|
|
|
|
|
Hi,
Thanks.
But the logic of the code is if the node matches wuth it then return it else return nothing.
Thanks,
Saimanti
|
|
|
|
|
The 'return it ' I suggested returns childs.end() that is the past-the-end iterator (a 'typed' NULL , roughly speaking).
Veni, vidi, vici.
|
|
|
|
|
Thank you. It worked. But now it is giving another error..
error C2451: conditional expression of type 'std::_Vector_iterator<_Myvec>' is illegal
The code below:
bool _tagXMLNode::RemoveChild( LPXNode node )
{
XNodes::iterator it = GetChildIterator( node );
if( it )
{
delete *it;
childs.erase( it );
return true;
}
return false;
}
Thank in advance,
Saimanti
|
|
|
|
|
I did..
bool _tagXMLNode::RemoveChild( LPXNode node )
{
XNodes::iterator it = GetChildIterator( node );
if( it != childs.end())
{
delete *it;
childs.erase( it );
return true;
}
return false;
}
Is this right?
Thanks,
Saimanti
|
|
|
|
|
It should be correct.
Veni, vidi, vici.
|
|
|
|
|
Thank you very much...
Saimanti
|
|
|
|
|
bool _tagXMLNode::RemoveChild( LPXNode node )
{
XNodes::iterator it = GetChildIterator( node );
if( it != childs.end() ) {
delete *it;
childs.erase( it );
return true;
}
return false;
}
|
|
|
|
|
is this funtion create an event in a asynchronized way? i.e use a background thread?
if I use a timeSetEvent() in a call back function:
void CALLBACK TimerProc1( UINT uID, UINT uMsg, DWORD dwUser, DWORD dw1, DWORD dw2 ) {
read bus data;
if (data == true) then
timeSetEvent( 5, 1, TimerProc3, 0, TIME_ONESHOT ) ;
}
No timeKillEvent(), then is that means the code will create many events in many threads, right? that is , no release resource.
|
|
|
|
|
if I use same parameters in a timeSetEvent(), then call timeSetEvent() twice, is that mean I created 2 different events?
or Sencond call reset the timer?
|
|
|
|
|
I have an application, there are 2 loops, one is message loop, one is a timeSetEvent() loop.
There is a global variable in both loops.
Now I meet a problem about redraw the screen. The situation like:
wndProc (UINT message, WPARAM wParam, LPARAM lPara)
{
if (GetTickCount() - GVarTck > 4000) then
redraw screen;
switch (message) { handle message;}
}
///////////////////////
OnPaint() {
if (g_timeEvent == 0)
timeSetEvent(50, 5, RefreshScreen,0, TIME_ONESHOT)
}
void CALLBACK RefreshScreen()
{
do Refresh thing;
GVarTikc = GetTickCount();
timeSetEvent(50, 5, RefreshScreen,0, TIME_ONESHOT)
//With GetTickCount() meassured, the time of refreshScreen() is
// about 20 ms.
}
|
|
|
|
|
Why do you need to use a timer to decide when to redraw the screen? You should do it in response to a WM_PAINT message, and you can force a repaint by calling the InvalidateRect() function.
Use the best guess
|
|
|
|
|
Hi, I wonder how much is the cycle of message loop.
I looked through some articles in MSDN, but no articles gave an explain about how much time one cycle message loop needs.
Is the message loop depends on hardware, or OS decide it? and if I have a timer event in my program, then is the message loop has higher priority?
|
|
|
|
|
econy wrote: Is the message loop depends on hardware, or OS decide it? Both I'd immagine. Seems like the answer would be non-deterministic, I'm no expert but Windows being a non real-time OS could and will preempt your program and your message pump for some undetermined time.
Maybe you could get some info using this[^]
econy wrote: timer event in my program, then is the message loop has higher priority?
Not normally see here.[^]
|
|
|
|
|
econy wrote: Hi, I wonder how much is the cycle of message loop.
Approximately 100 messages per second.
|
|
|
|
|
Does anyone meet the sitation when a image with many horizontal lines, with low levels zoom (when image is fit to window), is seen with moire effect ? And the drawing is made in classic way:
...
pDC->SetStretchBltMode(COLORONCOLOR);
pDC->StretchBlt(xDst, yDst, nDstWidth, nDstHeight, pMemDC, xSrc, ySrc, nSrcWidth, nSrcHeight, SRCCOPY);
...
I had tried with stretch mode HALFTONE, with the same results ...
After all, I dind't know where the problem come ... (P.S. I draw with GDI).
|
|
|
|
|
You might try my DLL[^].
Veni, vidi, vici.
|
|
|
|
|
Thank you, I doubt that you have an VC6 version of your project ... Do you ? And one thing, what is the source of the problem ? From where the problem came from ?
|
|
|
|
|
Nope. However, the DLL project contains just two important files, namely resample.c and resample.h . You may generate a DLL project skeleton via Visual Studio 6 Application Wizard and then add such files to it (probably you have to replace the generated header and source).
It should be simple.
You may even embed the resample.c and resample.h content directly into your project (that is without the need of loading the DLL ).
Veni, vidi, vici.
|
|
|
|
|
It looks like someone has given you a solution, so I'll explain a bit why this happens.
The resizing of your image using GDI is a simple re-sampling algorithm. When you shrink it, pixels in a horizontal and vertical direction are removed, at a semi regular spacing, to make the image fit the new size.
This has the effect of producing a horizontal and vertical waveform in your image.
Your parallel lines in the image, also make up a wave pattern.
When these two wave patterns interact, you get an interference pattern and see the Moire' effect.
http://en.wikipedia.org/wiki/Moire_effect[^]
|
|
|
|
|
Hi all,
I'm about to embark on my first development project. I'm really happy to see so much community spirit and collaboration going on online. Im going to be using the Neurosky SDK with C++ in order to read brainwave data, and I'll be using that data to manipulate the responsiveness of an Xbox 360 controller depending on how well the user is concentrating. Hopefully it'll be a fun little tool to assist gamers in staying alert!
If anyone has experience with XINPUT and has some pointers to set me off in the right direction that would be great!
I do have a specific question too. - How best to approach the issue of Computer Games reading directly from the Xbox controller and ignoring my program altogether?
All suggestions welcome!
|
|
|
|
|
This is really not a C++ question, and I suspect you would get better support by looking at some of these links[^].
Use the best guess
|
|
|
|
|
Kindly send or inform me if you can help me out.
Thanks
|
|
|
|
|
Please do not cross post. Pick one forum and stick to it.
|
|
|
|