gpt4 book ai didi

c++ - 在 C++ 中编写自定义 for 循环

转载 作者:太空狗 更新时间:2023-10-29 20:17:16 24 4
gpt4 key购买 nike

我想知道这是否可能,一个自定义的 for 循环。我想到的是 java 中的 foreach 表达式,即

for(Container c : Element e){
// do stuff with e
}

我想为我编写的自定义容器(我们称之为 cust_cont)编写它,我想使用 foreach 循环(就像来自 boost 的那个)。但在阅读迭代器等之前,我想问一下,如果需要明确的话,我是否可以只实现我想要的循环。

最佳答案

不确定我是否理解您的问题,但是是的,您必须实现 begin()end() 方法(最好在 const 上重载>) 以便迭代在您的自定义容器上工作。此外,您需要嵌套的 iteratorconst_iterator 类型(或 typedef)。总而言之,这是您需要的:

成员类型:

MyClass::iterator
MyClass::const_iterator

成员函数:

MyClass::iterator MyClass::begin();
MyClass::const_iterator MyClass::begin() const;
MyClass::iterator MyClass::end();
MyClass::const_iterator MyClass::end() const;

关于c++ - 在 C++ 中编写自定义 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6979569/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com