请教各位大虾 VECTOR 的使用 为了解决内存泄露 想要用VECTOR 能给些示例吗 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 #include <iostream.h>#include <vector.h>void main() { vector<char*> v; v.push_back("me"); v.push_back("you"); v.push_back("he"); v.push_back("she"); for(int i=0;i<4;i++) cout<<v[i]<<"\n";} vector<data_type>表示我们可以放入各种资料型别到<...>之中,vector物件便会正确的产生空间存放此型的物件。v.push_back(object)函数则把属于该型别的物件存入容器物件的记忆空间中。 一个vector容器好比一个传统C语言中的阵列,只是传统C语言中的阵列必须明确地指出阵列大小,如果注标值超过边界值,则系统将得到一个未知的错误。然而,STL的vector容器却不然,vector容器自己视需要,自动加大阵列的大小,所以应用程式就不需担心注标值超过阵列范围。图示如三。 start表示阵列起始处,finish表示阵列结束处,end_of_storage表示实际阵列结束的地方,如果阵列仍持续成长,超过end_of_storage,则vector容器会自动在配置一块记忆体,维持注标值不超过边界值。 多谢!能给出 vector 在vc++中的是实例吗?如果我有程序: void CDialog::OnAccept(){ CSock *rwSock; rwSock=new CSock; rwSock->SetParent(this); if(m_sListenSocket->Accept(*rwSock)) { } else { delete rwSock; AfxMessageBox("Accept() fail"); }}if{}中,我该怎么编写程序以防止内存泄露呢? 这个问题我不清楚,你可以参见<WINDOWS核心编程> #include <vector> add a member to your CXXXDialog classstd::vector<CSock*> m_vecSock; void CDialog::OnAccept(){ CSock *rwSock; rwSock=new CSock; rwSock->SetParent(this); if(m_sListenSocket->Accept(*rwSock)) {m_vecSock.push_back(rwSock); } else { delete rwSock; AfxMessageBox("Accept() fail"); }} CSocket 编程可以看看http://cs.baylor.edu/~donahoo/practical/CSockets/mfc/ http://www.codeguru.com/printing/index.shtml 使用CWnd::CreateEx创建一个WS_POPUP风格的窗体 VS制作安装包项目的时候,安装路径能自动添加一个文件夹吗? WIN32 WM_PAINT的应用 关于指针长度 求助:想自定义HOTKEY来实现对声音大小的控制?怎么定义啊?急 while 循环问题 问:TrackPopupMenu()里面都有些什么参数,是什么意思? 关于笔试的问题 有谁可以告诉我CGridCtrl具体怎么用? 请教TCP Client如何发送一个回车 请教文件打开的问题,100分,大侠赐教吖。。。 ★★★100分 请问怎么实现对一个文件夹(或文件)进行枷锁?是个什么思路?
能给出 vector 在vc++中的是实例吗?
如果我有程序:
void CDialog::OnAccept()
{
CSock *rwSock;
rwSock=new CSock;
rwSock->SetParent(this); if(m_sListenSocket->Accept(*rwSock))
{
} else
{
delete rwSock;
AfxMessageBox("Accept() fail");
}}
if{}中,我该怎么编写程序以防止内存泄露呢?
add a member to your CXXXDialog class
std::vector<CSock*> m_vecSock; void CDialog::OnAccept()
{
CSock *rwSock;
rwSock=new CSock;
rwSock->SetParent(this); if(m_sListenSocket->Accept(*rwSock))
{
m_vecSock.push_back(rwSock);
} else
{
delete rwSock;
AfxMessageBox("Accept() fail");
}}