0

テーブル内の変数の名前とタイプをベクトルに挿入しようとしています。私が使用する言語はC++です。

これが私のコードです:

    std::vector<std::string> parameters;
    std::vector<std::string> types;
    request = "select * from " + table;
    //cout << request << endl;
    if(mysql_query(connection, request.c_str())){
    fprintf(stderr, "Impossible to get parameters: %s\n",
        mysql_error(connection));
    return EXIT_FAILURE;
    }
    result = mysql_store_result(connection);
    while (field_mysql=mysql_fetch_field(result)) {
        parameters.push_back(field_mysql->name);
        types.push_back(field_mysql->type);
        }

    for(vector<string>::iterator it = parameters.begin(); it != parameters.end(); it++) 
        cout << *it << endl;
    mysql_free_result(result);

私が得たエラー:

std :: vector <std :: basic_string <char> :: push_back(enum_field_types&)'を呼び出すための一致する関数がありません

タイプが整数であり、文字列として宣言しているため、このエラーが発生したと思いますが、よくわかりません。

4

1 に答える 1

0

「型が整数で、文字列として宣言しているため、このエラーが発生したと思いますが、よくわかりません。」

あなたは、絶対に正しい。型を整数のコンテナにするだけで、問題は解決するはずです。

于 2013-03-19T16:22:12.780 に答える