社区
C++ 语言
帖子详情
set的问题
thewayhome
2007-04-27 02:20:02
有個struct S我重載了它的<和==方法
假設:
S s1;S s2;
有 s1 == s2;
set<S> Set;
Set.insert(s1);
Set.find(s2)!=Set.end();
但是如果我定義Set為set<S*>,
就有
Set.insert(&s1);
Set.find(&s2) ==Set.end();
怎样解決?
...全文
182
2
打赏
收藏
set的问题
有個struct S我重載了它的<和==方法 假設: S s1;S s2; 有 s1 == s2; set Set; Set.insert(s1); Set.find(s2)!=Set.end(); 但是如果我定義Set為set, 就有 Set.insert(&s1); Set.find(&s2) ==Set.end(); 怎样解決?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
longshanks
2007-04-27
打赏
举报
回复
Set<S*>是S指针的set。那么插入&s1时,将通过比较s1的指针值,也就是s1的地址,而不是s1本身。不会调用S上的<。S的<的语义是进行Sd对象的值比较,不是指针比较。于是,只有用s1的地址去find,才能得到插入的s1。
为此,只能另行定义一个比较函数(或函数对象),作为set模板的第二个模板参数:
struct s_less
{
bool operator()(const S* s1, const S* s2) {
*s1<*s2;
}
};
set<S*, s_less> Set;
...
Meyes的《Effective STL》中关联容器一章对此有详细的解释。
taodm
2007-04-27
打赏
举报
回复
那你得起用set模板的第二个参数,使用自定义的比较函数
Vty password is not
set
问题
解决
Vty password is not
set
问题
解决 在熟悉quagga基本命令的过程中,由于运行了 $ service password-encryption 这条命令是将设定的密码以密文的形式显示。由于好奇心的驱使,运行了 $ no service password-encryption 运行之前,我以为这条命令是使得加密的密码以明文形式显示出来,但是运行后,发现是把密码删除了,密码变为...
【springboot整合druid】java.sql.SQLException: url not
set
问题
描述
【springboot整合druid】java.sql.SQLException: url not
set
问题
描述 未使用自动装配的机制,实现springboot整合druid时(就是使用druid的jar包,而不是druid-spring-boot-starter)报错 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <ver
windows docker内nacos连接宿主机mysql,出现No DataSource
set
问题
nacos连接mysql出现No DataSource
set
这个
问题
,在网上百度折腾了一晚上,大部分都是说mysql8后面要加上时区的设置&serverTimezone=UTC,弄了好久还是没解决,太晚了下班回家明天接着弄。。。 第二天早上启动docker容器时突然瞟到了一个ip地址 这时想起可能是docker和宿主机的网络
问题
,于是继续百度。。。 解决过程 首先说一下网上的一些答案: 1、docker exec -it id /bin/bash 启动容器后进入容器 2、ifconfig
protobuf C++生成代码中使用自己定义类型参数时的
set
问题
如果proto结构体的变量是基础变量,比如int、string等等,那么
set
的时候直接调用
set
_xxx即可。 如果变量是自定义类型,那么C++的生成代码中,就没有
set
_xxx函数名,取而代之的是三个函数名:
set
_allocated_xxx() release_xxx() mutable_xxx() 使用
set
_allocated_xxx()来设置变量的时候,变量不能...
The stack plug-in failed to
set
问题
IAR调试CC2530程序,出现The stack plug-in failed to
set
a breakpoint on "main". The Stack window will not be able to display stack contents. (You can change this
set
ting in the Tool>Options dialog box.)的警告,程序
C++ 语言
65,209
社区成员
250,518
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章