|
Because in C++ a struct and a class are quite similar. The difference is that struct s give, by default, public public access to their members, while classes do the opposite (private access, by default, to their members).
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.
|
|
|
|
|
learn your school lessons. in C++, a struct is a class (the only difference is that is defaults is members as public instead of private).
|
|
|
|
|
C++ recommands that use class only for its spirit.
struct in C++ is for compatibility with C.
However you can think class as a mentally concept, as a more common concpet, so either can be called a class as you like.
|
|
|
|
|
I want to custom a Browseinfo window.
For original Browseinfo only gets the address information, I also want to know which form user choose(xsl,xml,txt,ect) now.
So, I want to add a ComboBox on the Browseinfo window.
I tried, but always encountered error when I calculate the ComboBox's location.
Does anyone have a relative Demo ? (a simple one is better )
And welcome any idea.
Thanks a lot!
------------------------------------------------------
zhangyuan0526@gmail.com(gtalk and mail,recommend)
alex_robin_526@hotmail.com(msn)
modified on Thursday, December 06, 2007 12:17:18 AM
|
|
|
|
|
moye2501 wrote: I tried, but always encountered error...
What error?
"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 all,
i am developing a application using vc++ 6.0 in which i have add check boxes in multiple columns(in 5 columns)of a list ctrl. existing extended style option provides check boxes only in the 0th column. how can i do this... can some one help me out to do this...
|
|
|
|
|
|
oh.. but is it possible to get the check boxes in five columns...? did any one try this....
|
|
|
|
|
|
Member 3869682 wrote: how can i do this
Use XListCtrl from Hans Dietrich.
"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
|
|
|
|
|
When i call the CDialog::OnOK(); function I get error :
C:\Documents and Settings\Administrator\Desktop\new_pdf_latest\pdf_latest\itagane_latest\itagane_latest\itagane\CTools\daishi.cpp(116) : error C2039: 'OnOK' : is not a member of 'CDialog'
How can I solve this error?
|
|
|
|
|
One possibility is deriving your dialog from CDialog
The other one is establishing it by yourself
//in header
//{{AFX_MSG(CDaishi)
virtual void OnOK();
//in cpp
void CDaishi::OnOK()
{
//do whatever you need
}
Forget about it. I didn't pay attention, you are not in MFC.
Greetings.
--------
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
“The First Rule of Program Optimization: Don't do it. The Second Rule of Program Optimization (for experts only!): Don't do it yet.” - Michael A. Jackson
modified on Wednesday, December 05, 2007 5:45:52 AM
|
|
|
|
|
And how can he derive his CDialog from MFC's CDialog?
I see a little naming conflict...
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.
|
|
|
|
|
I didn't realice...
Greetings.
--------
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
“The First Rule of Program Optimization: Don't do it. The Second Rule of Program Optimization (for experts only!): Don't do it yet.” - Michael A. Jackson
|
|
|
|
|
/in header
//{{AFX_MSG(CDaishi)
void OnOK();
//in cpp
void CDaishi::OnOK()
{
//do whatever you need
CDialog::OnOk();
}
Remove the virtual keyword in the header.it will Work
|
|
|
|
|
Something is missing, could you please present the decalaration of your class!
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow Never mind - my own stupidity is the source of every "problem" - Mixture
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You
|
|
|
|
|
SOCKET s = socket(AF_INET,SOCK_STREAM,0);
after I successfully connect to server,I use send function to send data.
I use default buffer and i get default value is 8192. and i don't set s to nonblocking. as following is my code fragment:
char buf[100*1024]={0};
memset(buf,0x08,sizeof(buf));
int nRet = send(s,buf,sizeof(buf),0);
but this function successfully complete. according to my understand,this function should in blocking .
cys
|
|
|
|
|
my test environment is in LAN
|
|
|
|
|
Whts the value of iRet??
if it is SOCKET_ERROR find the error by using WSAGetLastError()
or if it equals the byte actual bytes sent then nothing wrong in it.
and as far as ur question goes i guess it is supposed to be blocking call
Thanks,
Sandip.
|
|
|
|
|
nRet 's value equals 102400. this socket is in blocking mode. Because the default buffer size is 8192 bytes, and i send 102400 bytes. Obviously, 102400 is bigger than 8192, so this i/o operation should be blocked, but the actual result is that this i/o operation completes immediately.
P.S. The environment of the test is "LAN".
Thanks
Cys
|
|
|
|
|
It blocks until data is all sent or error occurs.
|
|
|
|
|
VC_FOOD wrote: but this function successfully complete. according to my understand,this function should in blocking .
I didn't understand what are you asking for.
|
|
|
|
|
this socket is in blocking mode. Because the default buffer size is 8192 bytes, and i send 102400 bytes. Obviously, 102400 is bigger than 8192, so this i/o operation should be blocked, but the actual result is that this i/o operation completes immediately.
P.S. The environment of the test is "LAN".
Thanks
Cys
|
|
|
|
|
This socket is in blocking mode. Because the default buffer size is 8192 bytes, and i send 102400 bytes. Obviously, 102400 is bigger than 8192, so this i/o operation should be blocked, but the actual result is that this i/o operation completes immediately.
P.S. The environment of the test is "LAN".
Thanks
Cys
|
|
|
|
|
The underlying network stack and driver were able to output the data before the return back into user-land, therefore your call completed with all bytes sent.
I've never found any relationship between the default buffer sizes and the amount of data I could send into or receive from the network stack. Just check the return values to see how many of the requested bytes were handled and deal with that situation.
Judy
|
|
|
|