腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
如何
实现
模板
函数
的
容器
和
迭代
器
的
重载
?
c++
、
templates
、
overloading
我想要一个
模板
函数
的
4个
重载
。此
函数
接受一个值范围y
和
另一个值范围x。这些范围既可以指定为
迭代
器
,也可以指定为
容器
。如果作为
容器
传递,则使用begin/end为
容器
调用
迭代
器
函数
。对于x,存在一种特殊情况,其中传递一个标量x将被视为范围[begin,end)中
的
所有x都是此值。,因为使用std::vector
和
浏览 7
提问于2019-09-25
得票数 0
回答已采纳
1
回答
迭代
器
与STL
容器
的
关系
c++
、
iterator
我理解
迭代
器
背后
的
一般想法,我可以在一个基本
的
层次上使用它们,但我不明白在引擎盖下发生了什么,以及它们与STL
容器
之间
的
关系。 --我
的
浏览 4
提问于2019-11-20
得票数 1
回答已采纳
1
回答
启用ADL在非std::命名空间内
的
距离,并回退到std::距离
c++
、
argument-dependent-lookup
我
的
用例如下所示:在一个非std::命名空间中,一个类有一个
模板
化成员
函数
,它接受2个(
模板
化)
迭代
器
作为参数,
函数
调用
的
一部分涉及对这些
迭代
器
调用距离()。问题是,有些
容器
对
迭代
器
的
距离()有自己
的
重载
。因此,如果我指定std::距离,这是不够
的
。但是,由于该类不在std::命名空间中,因此
浏览 1
提问于2021-05-25
得票数 0
回答已采纳
4
回答
组合
模板
和
继承
c++
、
templates
、
inheritance
、
iterator
、
containers
我接到一个任务,要在c++中以
模板
的
方式
实现
几种
容器
。所有这些
容器
都应该为
迭代
器
提供各种操作符
重载
。我对
模板
非常陌生,事实上,这将是我在这个主题中
的
第一个真正
的
项目。这就是我
的
问题:在这种情况下,使用带有继承
的
模板
是一个好主意吗?
容器
和
迭代
器
都可以这样做吗?如果是这样,我应该
浏览 0
提问于2013-06-07
得票数 1
回答已采纳
1
回答
理解
迭代
器
/const
迭代
器
的
实现
c++
、
iterator
我知道
如何
在曲面级别上使用
迭代
器
,但我试图了解
迭代
器
与
容器
类(如vector )之间
的
关系。根据 std::vector是std命名空间中
的
类
模板
,它使std::vector<double>成为一个类。std::vector<T>::iterator是std::vector<T>下
的
嵌套类型。据我所知,类
模板
vector有一个类型为iterator
的</
浏览 0
提问于2019-12-10
得票数 0
回答已采纳
4
回答
在std::vector insert中,
重载
模板
函数
选择(模式匹配)是
如何
工作
的
?
c++
、
templates
、
overloading
如何
不与上一个
重载
混淆,其中10
和
90是int,InputIterator
的
类型被用作int,而不是另一种方法,即将10作为size_type,20作为const int&它与上一个
浏览 49
提问于2011-07-12
得票数 17
回答已采纳
2
回答
我可以同时为矢量
和
地图编写一个
模板
函数
吗?
c++
、
templates
、
overloading
有没有办法为std::vector
和
std::map
的
容器
迭代
器
编写一个
模板
函数
呢?以下
函数
适用于std::vector<T>, std::array<T>, std::list<T>void fun(Iterator f, Iterator= l; ++f) doWork(*f); // or maybe
浏览 0
提问于2020-08-06
得票数 0
2
回答
STL
容器
的
Pass
模板
迭代
器
c++
、
templates
、
stl
、
iterator
对于我
的
C++类
的
练习(还没有讨论Boost ),我很难编写一个
模板
化
的
方法来接受两个
迭代
器
,用于在STL
容器
中求和数值。如果我能够知道
如何
为std::map
和
std::map指定
迭代
器
的
传递,我觉得我将能够为std::map编写这些方法。我不介意使用
模板
的
解决方案。 编辑:问题的确切措辞(省略非缴费句)。创建一个名为Sum()
的</e
浏览 3
提问于2012-08-31
得票数 5
回答已采纳
1
回答
如何
为自定义
容器
的
迭代
器
的
模板
函数
设置
重载
c++
、
templates
、
iterator
、
containers
、
overloading
这是一个关于
模板
的
一般性问题,我正在使用“预先”作为示例。假设有理由我不能在这里使用ADL或隐藏
的
朋友。n );template <typename T, class Allocator=std::allocator<T>>{ class iterator;
如何
浏览 3
提问于2022-04-09
得票数 1
回答已采纳
2
回答
定义一个
函数
,以便它可以接受列表或向量。
c++
、
stl
我有一个
函数
,它需要接收std::list或std::vector of MyClass *对象,并根据内部
的
情况进行一系列处理。我不想复制功能体。我只需要使用这些对象来
迭代
它们并执行一些只读检查。 我曾经想过直接传递.begin()
和
.end()
迭代
器
,但这看起来一点也不好看。是否有更好
的
方法来解决这个问题,目前我有以下
的
解决方案(从正在传递
的
向量中创建另一个列表,这也不是理想
的
)。MyClass*> inp
浏览 0
提问于2019-03-09
得票数 4
回答已采纳
3
回答
为什么std::cbegin返回与std::begin相同
的
类型
c++
、
iterator
、
c++14
显示了std::cbegin
的
签名constexpr auto cbegin( const C& c ) -> decltype(std::begin(c));它不应该返回类似于C::const_iterator
的
东西吗?
浏览 1
提问于2015-04-07
得票数 7
回答已采纳
1
回答
std::begin
和
std::end
的
const
重载
的
目的是什么?
c++
、
c++11
对于std::begin,我们有两个
容器
重载
:auto begin( C& c ) -> decltype(c.begin());auto begin( const C& c ) -> decltype(c.begin()); 但是C
的
稳定性可以用通常
的
模板
演绎规则来推导,因此第二次过载似乎是多余
的
。
浏览 2
提问于2015-11-07
得票数 16
回答已采纳
1
回答
基于策略
的
设计:
如何
以适当
的
方式定制主机结构?
c++
、
templates
、
strategy-pattern
、
generic-programming
、
policy-based-design
我有一堆算法
和
集合,我正在使用基于策略
的
设计(参见一书)来处理任意组合
的
复杂性。这很好,但是为了防止通过使用指向策略
的
指针来破坏主机类,建议将policied
的
析构
函数
设置为受保护
的
。但是,如果我将算法
和
集合析构
函数
设置为受保护
的
,则不能单独使用它们,而只能将它们用作策略。host类
的
结构,当每个实际
的
算法都需要一个Collection来处理,并且Collection被封装在主机中
浏览 8
提问于2013-04-29
得票数 2
回答已采纳
2
回答
移动
容器
的
迭代
器
?
c++11
、
stl
、
iterator
、
move
、
const-iterator
C++98
容器
定义了两种
迭代
器
,::iterators
和
::const_iterators。问题是,为了一致性
和
实际目的,添加::move_iterator**s也是有意义
的
吗?**,或者说是过火了。 我可以想象,如果可能,rvalue
容器
可能会移动它们
的
元素。例如,使用移动
迭代
器
可以很好地
实现
这一点,这取决于参数是lvalue还是rvalue。如果没有由move_iterators生成
的<
浏览 1
提问于2018-02-21
得票数 10
4
回答
专门化STL算法,以便它们在可用时自动调用高效
的
容器
成员
函数
c++
、
stl
STL具有全局算法,只要它们支持该算法
的
基本要求,就可以在任意
容器
上操作。例如,一些算法可能要求
容器
具有像向量而不是列表这样
的
随机访问
迭代
器
。当
容器
有一种比通用算法更快
的
方法来做一些事情时,它会提供一个同名
的
成员
函数
来
实现
相同
的
目标-就像一个提供自己
的
remove_if()
的
列表,因为它可以通过在固定时间内进行指针操作来删除元素。我
的</
浏览 0
提问于2011-09-28
得票数 3
回答已采纳
3
回答
迭代
器
和
STL
容器
c++
、
templates
、
stl
我需要做一些特定
的
构造
函数
,它有两个
迭代
器
:开始
迭代
器
和
结束
迭代
器
。STL
容器
(如Set、List、Map等)。
和
普通数组(普通指针)。那么我可以用泛型
模板
的
方式来
实现
它吗?但我想解释一下我
的
想法。当然,我可以
重载
构造
函数
,但我太懒了。STL
容器
太多。有没有一些
模板<
浏览 0
提问于2013-04-23
得票数 2
回答已采纳
1
回答
ADL
和
容器
函数
(开始、结束等)
c++
C++11
和
以后在命名空间std中定义空闲
函数
begin、end、empty等。对于大多数
容器
,这些
函数
调用相应
的
成员
函数
。但是对于某些
容器
(如valarray),这些空闲
函数
是
重载
的
(initializer_list没有成员begin())。因此,为了
迭代
任何
容器
,应该使用空闲
函数
,并且应该使用std以外
的
名称空间来查找
容器
<
浏览 1
提问于2016-12-06
得票数 7
回答已采纳
5
回答
为
容器
中
的
不同字符串类型
实现
编译时
的
“静态-if”逻辑
c++
、
templates
、
c++11
、
containers
、
compile-time
我想编写一个在字符串
容器
(例如std::vector )上操作
的
函数
模板
。 我想用相同
的
模板
函数
同时支持CString
和
std::wstring。问题是,CString
和
wstring有不同
的
接口,例如,要获得CString
的
“长度”,可以调用GetLength()方法,而不是调用size()或length()
的
wstring。C++11/14工具来
实现
浏览 3
提问于2016-06-03
得票数 14
回答已采纳
3
回答
我应该
如何
编写一个包含项目列表
的
接口?
c++
、
interfaces
我正在编写一个库
函数
,它接受项目的列表(或“一串”)(比如Student),并对它们做一些事情。在接口中编写
函数
签名
的
最佳方法是什么?std::vector<Student>
的
问题是,我
的
调用者可能没有使用STL,然后他们需要实例化并填充一个向量。不干净,性能不佳。一个
函数
需要一个开始
和
结束
迭代
器
?那么它是否应该作为
模板
函数
来
实现
呢?
浏览 0
提问于2016-04-06
得票数 3
回答已采纳
1
回答
容器
接口返回抽象类型
迭代
器
c++
、
iterator
、
containers
、
abstract
我必须使用
模板
实现
容器
(列表
和
向量),但我有一个问题。我有以下
容器
模板
:class Containerpublic: {virtual iterator begin() = 0; 因为
迭代
器
是一个抽象类。<em
浏览 1
提问于2014-01-14
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C+STL 教程
C+软件工程师,你该会什么?
聊聊C+的类和面向对象编程
C+语言学习笔记3
聊聊C+的模板和泛型编程
热门
标签
更多标签
活动推荐
运营活动
广告
关闭
领券