⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_13930.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:13930 发表者:皮皮 发表日期:2002-09-01 11:47:59
<br>主题:送分啦,请教关于vc中成员函数的返回值问题!
<br>内容:小弟刚学vc++,好生不懂的,好像在vc中的很多成员函数如果是返回是BOOL型的,返回的不是false(0)就是true(1),如果返回是为整型的则常常是0,有时也用-1,下面是技术内幕中的例题:<BR>int CEx08bView::OnCreate(LPCREATESTRUCT lpCreateStruct) <BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (CView::OnCreate(lpCreateStruct) == -1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;DWORD dwStyle = WS_VISIBLE | WS_CHILD;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (m_search.Create(NULL, dwStyle, CRect(0, 0, 100, 100),<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this, ID_BROWSER_SEARCH) == 0) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AfxMessageBox("Unable to create search control!\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_search.Navigate(s_engineAltavista, NULL, NULL, NULL, NULL);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;if (m_target.Create(NULL, dwStyle, CRect(0, 0, 100, 100),<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this, ID_BROWSER_TARGET) == 0) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AfxMessageBox("Unable to create target control!\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return -1;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_target.GoHome(); // as defined in IE3 options<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>}<BR>其中m_search和m_target是浏览器的ActiveX控件类的C++对象。<BR>我想问一下:<BR>1 ,为什么采用这么几个特殊的值,是不是在所有的程序中如果创建不能成功(或者是有错误,)就返回是-1啊?能正确执行的就是返回是0,而-1有没有具体的#define定义的?<BR>2,但是在if(m_search.Create(NULL, dwStyle, CRect(0, 0, 100, 100),<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this, ID_BROWSER_SEARCH) == 0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AfxMessageBox("Unable to create search control!\n");则是根据<BR>返回为0来作为不能成功创建的条件来判断的?<BR>3,一般在mfc中在什么情况下返回的是0,在什么情况下返回的是-1?或者是false或者是true?<BR> 各位&nbsp;&nbsp;&nbsp;&nbsp;3x!!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:浩公 回复日期:2002-09-01 12:50:32
<br>内容:我想是这样的,也不知对不对:<BR>&nbsp;&nbsp;&nbsp;&nbsp;1。返回值如果定义为BOOL型那么TRUE(1)为成功,FALSE(0)为失败。<BR>&nbsp;&nbsp;&nbsp;&nbsp;2。int型的,一般是0表示正常,其它为不正常,可以是错误代码等。这只是一个习惯问题,具体的你要不知道,可以查资料比如MSDN,都有详细的解释返回值的含义。<BR>&nbsp;&nbsp;&nbsp;&nbsp;3。-1好象在DOS下表示文本文件结束用EOF定义的。<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -