Tags.Cpp

Comparing C++ And Perl

#include "Tags.h"

using namespace std;

Tags::Tags(){
    tags.push_back("authors");
    tags.push_back("title");
    tags.push_back("title_link");
    tags.push_back("tech_report");
    tags.push_back("eprint_ref");
    tags.push_back("conference");
    tags.push_back("workshop");
    tags.push_back("journal");
    tags.push_back("vol");
    tags.push_back("year");
    tags.push_back("month");
    tags.push_back("pages");
    tags.push_back("description");
    tags.push_back("description_links");
    tags.push_back("abstract");
    tags.push_back("technology");
    tags.push_back("publisher");
    tags.push_back("series");
    tags.push_back("location");

    for (int i=0; i < tags.size(); i++){
        tag_exists.insert(
            pair <string, int> (tags[i], i));
    }
}

Tags::~Tags(){
}

size_t Tags::size() const {
    return tags.size();
}

string Tags::operator[](int i) const {
    return tags[i];
}

bool Tags::exists(string const &s) const {
    map <string, int>::const_iterator it = tag_exists.find(s);
    return (it == tag_exists.end()) ? false : true;
}

Wednesday, April 29, 2009 (1)