标签: iterator

使用boost :: iterator_facade有什么优缺点?

是的 - 标题几乎总结了它.我有很多实现迭代器概念的类型,我想知道是否值得引入这个boost头而不是手动实现.

至今:

好处

  • 明确指出
  • 不太可能有bug

c++ boost iterator

8
推荐指数
1
解决办法
2054
查看次数

使用s:iterator迭代地图列表

我正在尝试使用s:iterator迭代一个地图列表.我可以毫无问题地遍历List,但是我不能让它迭代遍历地图的条目.到目前为止,我有这个:

[..]
<s:iterator value="records" status="recordsStatus" var="record">
        <s:if test="#recordsStatus.index ==0">
            <tr>
                <td colspan="*"></td>
            </tr>
        </s:if>
        <tr>
            <s:iterator value="record.entrySet()" status="fieldStatus">
            <td>
                <s:property value="key"/>/<s:property value="value"/>
            </td>
            </s:iterator>
        </tr>
    </s:iterator>
[..]
Run Code Online (Sandbox Code Playgroud)

标签生成

<tr></tr>
Run Code Online (Sandbox Code Playgroud)

对于每个条目,但它不会通过第二个迭代器,所以我想我在使用value属性做错了.你能帮帮我吗?

谢谢

何塞

iterator struts2 map

8
推荐指数
1
解决办法
3万
查看次数

java.util.Map入口集的问题

我遇到以下代码的奇怪问题.

Map<String, Object> map = new HashMap<String, Object>();

for(Entry<String, Object> entry : map.entrySet()) {
   // 
}
Run Code Online (Sandbox Code Playgroud)

而下面的代码不编译.

Map map = new HashMap();

for(Entry entry : map.entrySet()) {  // compile error here
   // 
}
Run Code Online (Sandbox Code Playgroud)

有线索吗?

java generics collections iterator

8
推荐指数
2
解决办法
8063
查看次数

在C++中压缩几个迭代器

使用boost库可以使用zip迭代器将已知数量的迭代器压缩在一起,但是什么时候直到运行时才能知道要压缩的迭代器数量?

为了扩展一点,我有一个大小相同的列表列表,我需要将每个索引的所有值组合在一起并将它们提供给另一个操作.现在这都是手动的,我觉得应该有更好的方法.

示例:

说我有3个列表:

  • [1,2,3,4,5]
  • [11,12,13,14,15]
  • [21,22,23,24,25]

我需要将这些列表转换为:

  • [1,11,12]
  • [2,12,22]
  • [3,13,23]
  • [4,14,24]
  • ......等

我不知道在运行时输入中有多少列表.

c++ iterator

8
推荐指数
1
解决办法
2778
查看次数

尝试在C++中使用带迭代器和函数的for_each时,"未解析的重载函数类型"

//for( unsigned int i=0; i < c.size(); i++ ) tolower( c[i] );
for_each( c.begin(), c.end(), tolower );
Run Code Online (Sandbox Code Playgroud)

我试图使用for_each循环代替for循环进行赋值.

我不确定为什么我收到此错误消息:

In function âvoid clean_entry(const std::string&, std::string&)â:
prog4.cc:62:40: error: no matching function for call to âfor_each(std::basic_string<char>::iterator, std::basic_string<char>::iterator, <unresolved   overloaded function type>)â
Run Code Online (Sandbox Code Playgroud)

c++ iterator g++

8
推荐指数
1
解决办法
7572
查看次数

是否存在min_element的变体,它具有投影功能?

std::min_element将返回operator<(T,T)由自定义谓词定义的最小元素bool Pred(T,T).是否有类似的函数返回投影函数f(T)->R采用最小值的元素?

显然我可以定义bool Pred(t1,t2) { return f(t1) < f(t2); },但当f是lambda时,这有点不方便.

c++ algorithm iterator projection c++11

8
推荐指数
2
解决办法
1762
查看次数

迭代无序的地图C++

我写了一个程序,它读取输入,直到你点击',' - 输入的COMA.然后它计算你输入的字母数,

我想迭代这个地图,但它说it无法定义,没有类型:

#include <iostream>
#include <conio.h>
#include <ctype.h>

#include <iostream>
#include <string>
#include <tr1/unordered_map>
using namespace std;

int main(){
    cout<<"Type '.' when finished typing keys: "<<endl;
    char ch;
    int n = 128;
    std::tr1::unordered_map <char, int> map;


    do{
      ch = _getch();
    cout<<ch;
      if(ch >= 'a' && ch <= 'z' || ch >= 'A' && ch <= 'Z'){
            map[ch] = map[ch] + 1;
      }
    } while( ch != '.' );

    cout<<endl;

    for ( auto it = map.begin(); it …
Run Code Online (Sandbox Code Playgroud)

c++ iterator unordered-map

8
推荐指数
2
解决办法
4万
查看次数

如何迭代几个范围或迭代器的产品?

在Rust中有一种自然的方法来迭代几个范围或迭代器的"产品"吗?

当您在多维数组或某些状态空间上进行迭代时,会出现这种情况.例如,我想考虑具有5个元素的布尔元组的所有可能值.嵌套5个for循环有点笨拙.

iterator tuples rust

8
推荐指数
2
解决办法
1624
查看次数

重载>> ifstream_iterator对

我正在尝试在对上构造ifstream_iterator.我的代码如下:

typedef pair<float, int> T;

istream& operator>>(istream& stream, T& in) {
    stream >> in.first >> in.second;
    return stream;
}


int main(int argc, char **argv) {
    ifstream infile("dummy2");
    istream_iterator<T> iit(infile);
    istream_iterator<T> eos;
    while (iit != eos) {
        cout << (*iit).first << endl;
        ++iit;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我有一个虚拟文件"dummy2"如下:

"a" 4 "b" 5
Run Code Online (Sandbox Code Playgroud)

我想输出对{"a",4}和{"b",5}.

但是,我得到了令人讨厌的编译错误

In file included from /usr/include/c++/4.6/iterator:66:0,
                 from filestream.cpp:9:
/usr/include/c++/4.6/bits/stream_iterator.h: In member function ‘void std::istream_iterator<_Tp, _CharT, _Traits, _Dist>::_M_read() [with _Tp = std::pair<float, int>, _CharT = char, _Traits = std::char_traits<char>, …
Run Code Online (Sandbox Code Playgroud)

c++ iterator

8
推荐指数
1
解决办法
313
查看次数

如何检查切片是否已排序?

如何检查切片是否已排序?

假设一个接受切片的函数i32,是否有一种惯用的Rust检查切片是否已排序的方法?

fn is_sorted(data: &[i32]) -> bool {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

是否有可能推广上述方法以便接受迭代器?

fn is_sorted<I>(iter: I)
where 
    I: Iterator, 
    I::Item: Ord,
{
    // ...
}
Run Code Online (Sandbox Code Playgroud)

sorting iterator slice rust

8
推荐指数
2
解决办法
431
查看次数