|
ta gueule
|
|
|
|
|
Tu quoque, toxcct, fili mi!
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
[my articles]
|
|
|
|
|
why d'you say this to me sir ?!
|
|
|
|
|
|
|
|
this is an english site, f*cking idiot, if by chance you hadn't figured out yet
|
|
|
|
|
Uhm..., maybe hard reset was not enough!
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
[my articles]
|
|
|
|
|
|
Hakan D wrote: Reset?... Is this a session like the others?
Indeed I can see some improvements after second hard-reset.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
[my articles]
|
|
|
|
|
I doubt it. It seems the cheese has finally slipped off his cracker.
|
|
|
|
|
|
I said that to CPallini.
modified on Friday, January 25, 2008 9:08:49 AM
|
|
|
|
|
toxcct wrote: i
Should be I .
toxcct wrote: i said that to CPalinni.
Should be CPallini , your typing is worsening... Uhm, maybe the Turkish illness is contagious!
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
[my articles]
|
|
|
|
|
|
Hello everyone,
When change from __try to try, and __except(GetExceptionCode()) to catch(...), compile can pass.
Compile error and code are,
Compiling...
main.cpp
d:\visual studio 2008\projects\test_exception1\test_exception1\main.cpp(30) : warning C4509: nonstandard extension used: 'main' uses SEH and 'foo1' has destructor
d:\visual studio 2008\projects\test_exception1\test_exception1\main.cpp(28) : see declaration of 'foo1'
d:\visual studio 2008\projects\test_exception1\test_exception1\main.cpp(35) : error C2712: Cannot use __try in functions that require object unwinding
#include <iostream>
#include <excpt.h>
#include <windows.h>
using namespace std;
class Foo
{
public:
Foo()
{
cout << "constructing Foo" << endl;
}
virtual ~Foo()
{
cout << "destrucing Foo" << endl;
}
};
int main()
{
int* address = NULL;
__try{
Foo foo1;
(*address) = 1024;
} __except (GetExceptionCode())
{
cout << "access violation caught" << endl;
}
return 0;
}
</windows.h></excpt.h></iostream>
regards,
George
|
|
|
|
|
Cannot use __try in functions that require object unwinding :
the above error means the usage of __try/__except is forbidden in the function which has objects which (the object) will be destroyed upon the function return.
Come online at:-
jubinc@skype
|
|
|
|
|
Thanks Don Box,
1.
Why using try/catch is ok? It is still structured exception.
2.
Why the usage of __try/__except is forbidden in the function which has objects which (the object) will be destroyed upon the function return? I think the more accurate term to replace return is stack unwinding.
regards,
George
|
|
|
|
|
Is it as simple as moving Foo foo1 outside of the try catch block?
Iain.
|
|
|
|
|
Moving out Foo foo1 will result in the same compile error, my purpose of this post is to find the root cause of compiler error, i.e. at which point I violate the C++ standard.
Any ideas, Iain?
regards,
George
|
|
|
|
|
Sorry, I'm not much of an expert on exceptions etc. A weak point in my armoury. I'm old school, and check return values, instead of putting up a blast shield for when things blow up.
I probably *should* do both...
Iain.
|
|
|
|
|
Thanks all the same, Iain!
It is welcome if you could share some points in the future.
regards,
George
|
|
|
|
|
George_George wrote: at which point I violate the C++ standard
At the point of using MS-specific SEH.
Let's think the unthinkable, let's do the undoable, let's prepare to grapple with the ineffable itself, and see if we may not eff it after all. Douglas Adams, "Dirk Gently's Holistic Detective Agency"
|
|
|
|
|
|
Which means that the Standard C++ Exception model is more convenient!
Maxwell Chen
|
|
|
|