This repository has been archived on 2025-04-11. You can view files and clone it, but cannot push or open issues or pull requests.
dmspine64backup/Attribute.h

75 lines
1 KiB
C
Raw Normal View History

2015-09-15 20:17:21 -05:00
#include <iostream>
#include <vector>
using namespace std;
//Funtional, might need more functionality
//template<typename T>
class Attribute {
//a named column of a relation
string name;
2015-09-15 21:51:50 -05:00
bool isKey;
2015-09-15 20:17:21 -05:00
int size;
public:
2015-09-15 20:55:21 -05:00
2015-09-15 21:51:50 -05:00
vector<string> values;
void initializeAttribute(string n, vector<string> a){
2015-09-15 20:17:21 -05:00
name = n;
2015-09-15 21:51:50 -05:00
values = a;
2015-09-15 20:17:21 -05:00
}
string getName(){
return name;
}
2015-09-15 21:51:50 -05:00
Attribute(){ }
2015-09-15 20:17:21 -05:00
void display()
{
2015-09-15 21:51:50 -05:00
//cout<<"\nAtribute name:\t"<<name<<"\n";
//cout<<"Elements: ";
2015-09-15 20:17:21 -05:00
for (int i = 0; i < values.size(); ++i)
{
cout<<values[i]<<" ";
}
}
2015-09-15 20:21:19 -05:00
int getSize()
{
return values.size();
2015-09-15 20:17:21 -05:00
}
2015-09-15 21:51:50 -05:00
void pushBack(string s)
{
values.push_back(s);
}
void erase(int position)
{
values.erase(values.begin()+ position);
}
/*
Attribute(vector<string> v){
this.values = v;
}
Attribute(const Attribute<string>& a){
this.values = a.getAll();
}
Attribute& operator=(const Attribute<string>& a){
this.values = a.getAll();
}
vector<string> getAll(){
return this.values;
}
*/
2015-09-15 20:17:21 -05:00
};