Problem with push_back.

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • AnuSree

    Problem with push_back.


    Hi



    I am getting error with push_back, some one please help me ASAP in this
    aspect here am sending the needful info.

    _______________

    Class VarbindList:

    _______________



    #ifndef VARBINDLIST_H

    #define VARBINDLIST_H



    #include "Varbind.h"

    #include "Vector.h"

    #include <vector.h>

    #include "Snmp.h"

    #include "Object.h"



    class VarbindList : public Vector {



    public:

    VarbindList() {



    static const string INVALID_OBJ = "Invalid instance";

    static const string INVALID_OBJ_VEC = "Not an instance of vector";

    }

    VarbindList(int initialCapacity );



    static VarbindList decodeSequence( Asn1Value aVarbinds);// throws



    void addVarbind(Obje ct aVarbind);// throw Exception;





    void addVarbinds(vec tor <Object> aVarbindArray);// throw Exception;





    void addVarbinds(Vec tor aVectorOfVarbin ds);// throw Exception;





    void addVarbinds(Obj ect aVarbind);// throw Exception;





    vector <Varbind> getVarbindArray ();

    vector <Object> encode();

    char * toString();



    // Constants

    private:

    static const string INVALID_OBJ;// = "Invalid instance";

    static const string INVALID_OBJ_VEC ;// = "Not an instance of vector";

    };

    #endif // VARBINDLIST_H



    _______________ ____

    Class NameValuePair:

    _______________ ____



    # ifndef NAMEVALUEPAIR_H

    # define NAMEVALUEPAIR_H



    #include "Snmp.h"

    # include "AllInclude s.h"



    class NameValuePair {

    private:

    string Name;

    string Value;



    public:

    NameValuePair() { }

    NameValuePair(s tring mName, string mValue) {

    Name = mName;

    Value = mValue;

    }

    //Get methods..

    string name() { return Name; }

    string value() { return Value; }



    //Set Methods

    void name(string mName) { Name = mName; }

    void value(string mValue) { Value = mValue; }

    };

    # endif





    And this is the peice of code of a method in which i am getting error
    when am using push_back.



    Message SnmpSouthAdapto r :: encode(Request req) {



    vector<NameValu ePair> ar = req.arr();

    VarbindList varbinds;// = VarbindList();

    for ( int i = 0; i < ar.size(); ++i ) {

    varbinds.push_b ack(ar); //Error Here

    }

    }





    Here in varbinds.push_b ack(ar), i have to type cast the type of ar
    from vector<NameValu ePair> to the type VarbindList but am not getting
    how to do this,since the type of the ar is not the same as the type
    of varbind am getting error :



    no matching function for call to `VarbindList::p ush_back
    (NameValuePair &)'





    Here VarbindList is a class and varbinds is the object of the class
    VarbindList and ar is of type vector<NameValu ePair>.



    I wrote the class declarations of both VarbindList and NameValuePair on
    the top.Please help me ASAP


    --
    Posted via http://dbforums.com
Working...