|
Have you tried #include< new > ?
Nothing is exactly what it seems but everything with seems can be unpicked.
|
|
|
|
|
Matthew Faithfull wrote: Have you tried #include< new > ?
Not working either.
Maxwell Chen
|
|
|
|
|
Hmm, I think I remember the example you're talking about and I remember struggling with it but I don't remember how to fix it, sorry.
Nothing is exactly what it seems but everything with seems can be unpicked.
|
|
|
|
|
No doubt the article is poorly written. If you follow the links and read the grammer for the placement operator new you should come up with the following for the sample class (see following note below):
class A {
public:
A(int) { throw "Fail!"; }
void *operator new(size_t stAllocateBlock);
void *operator new(size_t stAllocateBlock, char chInit);
void *operator new(size_t stAllocateBlock, char*, int);
};
void *A::operator new(size_t stAllocateBlock)
{
void *pvTemp = ::malloc( stAllocateBlock );
return pvTemp;
}
void * A::operator new(size_t stAllocateBlock, char*, int)
{
void *pvTemp = ::malloc( stAllocateBlock );
return pvTemp;
}
void * A::operator new(size_t stAllocateBlock, char chInit)
{
void *pvTemp = ::malloc( stAllocateBlock );
if( pvTemp != 0 )
memset( pvTemp, chInit, stAllocateBlock );
return pvTemp;
}
If you compile this you will get the warning (C4291) that the article is trying to highlight. If you provide a placement new operator for a class you need to provide a matching delete operator.
|
|
|
|
|
Member 754960 wrote: If you follow the links and read the grammer for the placement operator new you should come up with the following for the sample class (see following note below):
Thanks!
Maxwell Chen
|
|
|
|
|
Can any one tell how to increase the font size in an statusbar
|
|
|
|
|
Use CWnd::SetFont() .
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
I have created a Resource-only Dll viz. Language, which includes only resources i.e
Dialogs,
Toolbars,
Acceleraters,
Bitmaps,
Icons,
String Tables,
Version etc.
I have created one Dialog Based Application viz. LanguageApp, which includes only code - nothing else.
Now, I want to load each-n-every resource from the dll Language to application LanguageApp without including resource.h file of the dll.
<big>Provided that</big> : <big>Any modification done to dll should not cause application to build/compile again</big>
« Where There Is A Will There Is A Way »
|
|
|
|
|
So, what is your question here?
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
...formerly known as brahmma
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Use the APIs FindResource and LoadResource .
Maxwell Chen
|
|
|
|
|
Punit Shah wrote: Provided that : Any modification done to dll should not cause application to build/compile again
Hence you cannot add resources to the DLL!
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]
|
|
|
|
|
CPallini wrote: Hence you cannot add resources to the DLL!
Indeed!
Maxwell Chen
|
|
|
|
|
Hi all,
I want to add two radio buttons to select two states, + or - option. How can I do that.
I've try this, add to radio buttons and add member variables to them as well. Then I want to get the user selected state from there and do my processing. But I've no luck to find it.
I appreciate your help all the time...
Eranga
|
|
|
|
|
|
Are you talking about the GetCheck() and SetCheck() methods?
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
dear all
fatal error C1010: unexpected end of file while looking for precompiled header directive
how to solve this prolbem? thanks
Li Zhiyuan
7/1/2008
|
|
|
|
|
Add this on the topmost line in .cpp files.
#include "stdafx.h"
Maxwell Chen
|
|
|
|
|
thanks, but i am using vc++ 2005, it need to add it yet? thanks
Li Zhiyuan
5/10/2006
|
|
|
|
|
li zhiyuan wrote: thanks, but i am using vc++ 2005, it need to add it yet? thanks
Where is the project from? You created it? Or you got from someone else?
If the project is created by yourself, either project type MFC or Win32 generates an "stdafx.h " file automatically in the project folder, unless you were starting from an empty project.
Maxwell Chen
|
|
|
|
|
|
u right click your source code .cpp, and go to setting,in category, u choose precompiled headers and also check not use precompiled headers..that is all..any problem, tell me..
Li Zhiyuan
5/10/2006
|
|
|
|
|
li zhiyuan wrote: u right click your source code .cpp, and go to setting, ... any problem, tell me..
Maxwell Chen
|
|
|
|
|
Per MSDN:
A precompiled header was specified, but it did not contain a precompiled header directive.
This error can be caused by specifying an incorrect file as a header file, or by specifying an include file with the /Yu (Use Precompiled Header) command line option that is not listed in the source file as an include file.
"Normal is getting dressed in clothes that you buy for work and driving through traffic in a car that you are still paying for, in order to get to the job you need to pay for the clothes and the car and the house you leave vacant all day so you can afford to live in it." - Ellen Goodman
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Hi,
I am creating an MFC app as well as learning about design patterns and good coding practices, and so I've got a question for you whizzes...
I am creating a class to control a dialog which fills in a DirectX materials structure:
typedef struct _D3DMATERIAL9 {
D3DCOLORVALUE Diffuse;
D3DCOLORVALUE Ambient;
D3DCOLORVALUE Specular;
D3DCOLORVALUE Emissive;
float Power;
} D3DMATERIAL9;
My question is thus:
The class I am creating for this control should take a pointer to a struct (as above) as an argument for it's constructor. This is not a problem if the control is being used as a modal dialog:
D3DMATERIAL9 Mat;
CDX9MaterialDialog dlg(&Mat);
INT_PTR nResponse = dlg.DoModal();
But when the dialog is being used as a child, I have to declare the class as a member of the parent dialog, right? How can I ensure that the my class is initialized with a valid pointer, when the parent dialog class will use the default no argument constructor for the class?
I would like to make sure that the dialog is initialized with a pointer so that the dialog class is not responsible for creating (and deleting) a new material structure.
Thanks - @LG
|
|
|
|
|
in the dialog, you will have a member pointer to the D3DMATERIAL9 structure, just be certain you initialize it to NULL in the constructure; and create a Set function to set the structure in the dialog.
in pseudo code.
class YourDialog
{
YourDialog();
D3DMATERIAL9* m_pMaterial;
void SetMaterial( D3DMATERIAL9* pMaterial) { ASSERT( pMaterial); m_pMaterial = pMaterial;};
};
YourDialog::YourDialog() : m_pMaterial(NULL)
{
}
and now, it's your job to check that each time you access m_pMaterial it is not NULL.
|
|
|
|