これは私のコードです
void push(const PetModel& petModel, const std::string& host, UInt8 side,
bool full = false, const std::string& master = "",
const std::vector<std::pair<UInt8, UInt8> >& skill
= std::vector<std::pair<UInt8, UInt8> >()); // This is the error Occur
そしてコンパイラは言った:
error: expected ‘,’ or ‘...’ before ‘>’ token
error: wrong number of template arguments (1, should be 2)
SLES で Gcc 4.1.2 を使用しています。私はデモを書きます。デモは機能します。それはgccのバグですか?
#include <iostream>
#include <vector>
#include <map>
void fun(int a , int b , int c, int d = 0, int e = 0,
int f = 0, const std::vector<std::pair<int, int> >& v = std::vector<std::pair<int, int> >()) {
}
int main() {
fun(1, 2, 3);
}
これがデモです。