2017-08-09 52 views
1

不明白什麼是wrogn代碼,第二個函數定義或者調用main函數中的這個函數? 我認爲,但不是很確定,調用問題,導致沒有調用代碼編譯好。編譯器的gccSTL容器作爲函數中的模板參數,調用中的錯誤

#include <iostream> 
#include <vector> 
#include <algorithm> 

using namespace std; 

template<class T> 
void show_element(T ob) 
{ 
    cout << ob << " "; 
} 

template<template<class> class S, class T> 
void show_sequence(S<T> sequence) 
{ 
    for_each(sequence.begin(), sequence.end(), show_element<T>);  
} 

int main(int argc, char const *argv[]) 
{ 
    std::vector<int> v(20, 0); 

    //here the problem 
    show_sequence<std::vector<int>, int>(v); 

    return 0; 
} 
+0

algorithms.cpp:在函數 'INT主(INT,常量字符**)': algorithms.cpp:29:40:錯誤:對呼叫沒有匹配的功能爲「show_sequence(標準::矢量 &)' algorithms.cpp:29:40:note:candidate is: algorithms.cpp:18:6:note:template