|
Hi, I have two classes, say A and B
class A {
private:
...
int *p;
...
public:
...
~A() { delete [] p; }
int getData(int i) { return p[i]; }
}
class B {
private:
...
A *p;
...
public:
...
~B() { delete [] p; }
A getData(int i) { return p[i]; }
}
In my main code I create a class B with say A array of length 2 and each A has int array of length 5. The problem is if I loop through the objects trying to print out the values of the integer arrays, I get an error.
e.g. for(i=0;i<2;i++)
for(j=0;j<5;j++)
cout << bImpl.getData(i).getData(j);
This works for 'bImpl.p[0].p[0]' but gives an error for 'bImpl.p[0].p[1]', the reason being (i think !) that when 'bImpl.getData(i).getData(j)' returns it calls the destructor of class A and removes the pointer to the integer array. I think this is correct as if i remove the 'delete [] p' line from both the destructors, everything works fine. I know that this line of code is necessary and would appreciate any help.
|
|
|
|
|
Try changing the getData method of B to:
A* getData(int i) { return p+i; } and the printing line to
bImpl.getData(i)->getData(j);
It's just one of the possible solutions, the simplest.
"though nothing
will keep us together
we can beat them
for ever and ever"
rechi
|
|
|
|
|
Hi every body
I want to add crriage return and line feed with end of txt file when I made a txt file.
FILE *fp;
fp = fopen("MY.txt",w+);
fprintf(fp,...
fclose(fp);
|
|
|
|
|
try thiz.....
FILE *fp;
fp = fopen("MY.txt",w+);
fputc(13,fp);
fputc(10,fp);
fputc(26,fp);
fclose(fp);
hope thiz helpz......
cheerz.....
"faith, hope, love remain, these three.....; but the greatest of these is love" -1 Corinthians 13:13
|
|
|
|
|
FILE *fp;
fp = fopen("MY.txt",w+);
fseek(fp, 0, SEEK_END);
fprintf(fp, "\n");
fclose(fp);
TOXCCT >>> GEII power [toxcct][VisualCalc]
|
|
|
|
|
Hi!
I need to know how to get user information of every process running in windows. I already have a list with all the process id's, but I can't find the way to obtain the user names (or user id's) of the owners of that processes.
I'm using VC++ 6
Can you help me, please?
Thanks!!!
|
|
|
|
|
Have a look at the PSAPI and Tool Help Library in MSDN.
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!)
|
|
|
|
|
|
|
Hi, at first time I want to apologize for my English.
I need to change the language of my app and I like to do it changing the caption of the controls in the resource.rc file, or having one resource.rc file for each language, but then I need to use resource.rc file in the execution and not in the compile time, can I do it? How can I do it?.
Thank you.
kaworu@inicia.es
|
|
|
|
|
Kaworu2 wrote:
then I need to use resource.rc file in the execution and not in the compile time, can I do it?
Check this article it's deal with your problem
http://www.codeproject.com/cpp/mult_lang_support.asp[^]
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
|
|
|
|
|
I want to create an MFC application in it I want to use perl. Suppose there's a Dialog Box on it there r few buttons when we click on them the perl code associated with that button should be executed.
For eg. there's a button when we click on that button it asks for the name of the project to be created in Visual Source Safe Database.
Or simply u can tell me this eg. For eg. when we click on a button it asks for the ur name & then prints Hello ur name.
Then i'll try to embed this code myself in VC++.
Now, if we click on the create new project button the following code should get executed
chomp ($proj = <stdin>);
system ("ss Create $proj");
print("$proj Project has been Created Successfully.\n\n");
Above code first asks for the name of the project that has to be created. Then second line executes the system cmd & creates a project that the name u specified. ss Create is an system cmd for executing system cmd we use system keyword. And finally prints the msg Project_Name Project has been Created Successfully. This cmd creates a project in VSS.
This script I created for CLI I.e cmd prompt. Now I want the same application to be executed using VC++.
Plz. let me know as soon as possible.
|
|
|
|
|
NityaKakkar wrote:
u can tell me this eg. For eg. when we click on a button it asks for the ur name & then prints Hello ur name.
Read Chapter 1 And 2 of Teach yourself Visual C++ in 21 days.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
|
|
|
|
|
Hello!
I started using VC++ .NET just recently. I made small app with some single line edit controls on it (with .NET resource builder). I don't process any events from edit controlls yet, but I have very strange situation. I start the app and click on some edit control and write some text. When I press ENTER, the app closes. It doesnt matter if edit control was empty or with some text. I don't process any messages from edit control so I would expect nothing would happen.
I don't know why that happens. Am I missing something? I don't remember having such a problem on VC++ v6.0.
Best regards,
Rostfrei
|
|
|
|
|
Rostfrei wrote:
I start the app and click on some edit control and write some text. When I press ENTER, the app closes.
Actually On Pressing Enter it call Default Button , In you case that's OK Button Which close down you application.
now you have two solution of above Problem
Either HANDLE OnOk Message or Select Want Return property of Your Edit Control.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
|
|
|
|
|
I set the Want Return property of edit control to false, but still doesn't help.
Regards
Rostfrei
|
|
|
|
|
Rostfrei wrote:
I set the Want Return property of edit control to false, but still doesn't help.
Set It to TRUE or make a Dummy Button on you Dialog Sheet and Make it Default Button by Selecting Default Button
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
|
|
|
|
|
Makeing dummy (not visible) button with Default Button by property set helped. Thank you. But it still bothers me I don't know where it is processed
Regards,
Rostfrei
|
|
|
|
|
Mr. Giorgi Moniava had given you technique to handle that in Future!
Hope So, you don't have problem dealing with DEFAULT BUTTON in Future!
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
|
|
|
|
|
Next time when you write program , doubleclick on the Ok button and simply delete the line :
void CyouDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
// OnOK();
}
So you will not experience such problems anymore
m0n0
|
|
|
|
|
Need a pointer in the right direction How do I change working drives, make directories, etc across a network (i.e. on a remote machine) ?? Can't seem to find any info on MSDN (but maybe I'm not looking for the right thing !!)
Doug
|
|
|
|
|
Hi,
In C++ .NET ios::nocreate is not supported.
How can we replace this code to check file existance:
ifstream cvr_file(file_name, ios::nocreate);
if (!cvr_file.good())
return;
Thanks in advance,
Julia.
|
|
|
|
|
Hello!
I searched all over the net for the following solution. I have some MFC dialog based application. I still want to use printf, cout, etc., but there is no console window, just dialog. Is there some way to use stdout the same way like in command prompt programs?
I found one way of doing this:
AllocConsole();
WriteFile(GetStdHandle(STD_OUTPUT_HANDLE),(void *)out,(DWORD)strlen(out),&written,0);
but the problem here is that you have to use WriteFile function and cout or printf does not work.
Best regards,
Rostfrei
|
|
|
|
|
You can show a console, by adding the following line in Post-Build in Project Properties (VC2003) or Project Settings Post-Build Step (VC6).
editbin /SUBSYSTEM:CONSOLE "$(OUTDIR)"\<program name="">
Where program name is the name of your final build exe.
If i am building Notepad.exe, then it would be
editbin /SUBSYSTEM:CONSOLE "$(OUTDIR)"\notepad.exe
You can also call it from cmd.exe manually
editbin /SUBSYSTEM:CONSOLE c:\programfiles\etc\etc\notepad.exe
Usman
|
|
|
|
|
Thank you very much. That is exactly what I needed.
Best regards,
Rostfrei
|
|
|
|