社区
C++ 语言
帖子详情
问几个关于vector的问题
lxhtzy
2006-11-27 10:58:03
1,能有这样的定义吗:vector<vector<int>> ivec;
2,vector<spring> vec1("hellow"),vec2("h");
vector<spring>::iterator vc1=vec1.begin(),vc2=vec2.begin();
那么vc1==vc2吗?
也就是说 :如何理解如果两个迭代器对象指向同一个元素,则他们相等,否则就不相等。
...全文
247
7
打赏
收藏
问几个关于vector的问题
1,能有这样的定义吗:vector<vector> ivec; 2,vector vec1("hellow"),vec2("h"); vector::iterator vc1=vec1.begin(),vc2=vec2.begin(); 那么vc1==vc2吗? 也就是说 :如何理解如果两个迭代器对象指向同一个元素,则他们相等,否则就不相等。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
greenteanet
2006-11-28
打赏
举报
回复
1,能有这样的定义吗:vector<vector<int>> ivec;
这个是可以的,属于模板的嵌套。但是注意书写格式。
2,应该理解为指针的判等条件。
晨星
2006-11-28
打赏
举报
回复
一般指的是同一容器中的同一元素,而不是不同容器中的同一位置。
lxhtzy
2006-11-28
打赏
举报
回复
谢谢啊 分不多
KthTes
2006-11-28
打赏
举报
回复
1.可以。模板类型可以嵌套
2.应该是vector<string>楼主写错了。楼主可以做一个试验:
#include <iostream>
#include <vector>
#include <typeinfo>
using namespace std;
class A
{
};
int main()
{
vector<string> svec;
vector<string>::iterator it=svec.begin();
if(typeid(*it)==typeid(string))
cout<<"OK"<<endl;
if(typeid(it)==typeid(string*))
cout<<"OK"<<endl;
return 0;
}
呵呵,实际证明,你的vector<string>::iterator的类型就是string*,vector<int>::iterator就是int*
明白了吧?
指针怎么判等的,iterator就怎么判等。你要想看它们实际指向的东西等不等,那要加解引用运算符*。
taodm
2006-11-28
打赏
举报
回复
iterator相当于指针(虽然精确的说法是指针是一种iterator),指针所指向的地址值相同,指针才相等,iterator同理。
lxhtzy
2006-11-27
打赏
举报
回复
如何理解如果两个迭代器对象指向同一个元素,则他们相等,否则就不相等。
晨星
2006-11-27
打赏
举报
回复
(1)可以,但后面两个“>>”需要用空格隔开一下:vector<vector<int> > ivec;否则,编译器会将“>>”识别成一个移位运算符,从而报出语法错误。
(2)vc1==vc2?这个怎么说呢,不同的库产品中,vector::iterator的类型不尽相司,但至少从C++语言标准中得不出楼主的结论。
LINUX网络编程:TCP(1)
1.认识Tcp的报头2.确认应答机制(ACK)序号与确认序号捎带应答3.超时重传机制4.Tcp连接管理三次握手为什是三次握手四次挥手理解TIMEWAIT。
Linux网络:TCP网络编程(1)
前面我们已经学习了用UDP进行网络编程。接下来我们就来学习利用另一个重要网络协议——TCP,来进行网络项目编程 相关代码已经上传至作者的个人gitee:楼田莉子/Linux学习喜欢请关注目录套接字地址结构体 sockaddr_in 结构体 in_addr 结构体TCP相关的接口 socket() bind() listen() accept() connect() send()
【Linux网络】详解TCP协议(1)
🎉博主首页:有趣的中国人🎉专栏首页:Linux网络🎉其它专栏:C++初阶 |C++进阶 |初阶数据结构小伙伴们大家好,本片文章将会讲解TCP协议的相关内容。您的支持是我最大的动力,让我们一起努力,共同成长!
Linux网络编程套接字(三)之简单的TCP网络程序1【TCP socket API 详解】
Linux网络套接字编程:TCP网络编程中的核心socket API,包括socket()、bind()、listen()、accept()和connect()等函数的功能与使用方法。文章通过图示和代码示例,讲解了如何建立TCP服务器和客户端连接,并分析了单连接程序的局限性。最后提出了两种改进方案:通过创建子进程或线程来实现多连接处理能力,以及使用线程池优化TCP服务器性能。
Linux网络编程1 TCP循环服务器
主机字节序到网络字节序\\函数返回值是一个 32 位的网络字节顺序;\\函数返回值是一个 16 位的网络字节顺序;网络字节序到主机字节序\\函数返回值是一个 32 位的主机字节顺序;\\函数返回值是一个 16 位的网络字节顺序;IP地址转换函数socket() 创建套接字-domain是地址族PF_INET // internet 协议PF_UNIX // unix internal协议PF_NS // Xerox NS协议。
C++ 语言
65,214
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章