Chat LIVE With Programming Experts! There Are 23 Online Right Now...

Welcome to Dream.In.Code
Become a C++ Expert!

Join 244,283 C++ Programmers for FREE! Get instant access to thousands of C++ experts, tutorials, code snippets, and more! There are 1,069 people online right now. Registration is fast and FREE... Join Now!




queue use in vector array

 
Reply to this topicStart new topic

queue use in vector array, Please help me

chuynh08
29 Sep, 2008 - 08:45 PM
Post #1

New D.I.C Head
*

Joined: 29 Sep, 2008
Posts: 2


My Contributions
I have code in the vector array like that:
CODE

#include <Vector.h>
#include <conio.h>
#include <iostream.h>


Vector::Vector(int capacity){
        vectorArray = new double[capacity];
        maxSize = capacity;
}

void Vector::empty(){
        for(int i=0; i<maxSize;i++)
        {
               vectorArray[i]=0.0;
        }
}

void Vector::put_value(int index, double value){
        vectorArray[index]= value;
        
}

double Vector::getFirst(){
        first = vectorArray[0];
        return first;
}

double Vector::getLast(){
        last = vectorArray[maxSize-1];
        return last;
}

double Vector::get_value(int index){
        // check size out
        if(index <0 || index > maxSize){
                cout << "\nOut of bound";
                return(0);
        }
        return *(vectorArray + index);
}

int Vector::getSize()
{
        return maxSize;
}

void Vector::print()
{
    cout << "Array contains the following elements:" << endl<<endl;

    for (int i=0; i< maxSize; ++i){
        cout << vectorArray[i] << " ";
    }
}




so now I want to use it in queue, how can I define class queue?
I get the head file:
#ifndef _Queue_h
#define _Queue_h
#include <Vector.h>

class Queue{
private:
double back, front;
int count;
public:
void pushBack(Vector *v, double p);
void popBack();
double removeQ(Vector *v);
bool isFull();
double empty(Vector *v);
double removeQ(Vector *v);
void front(Vector *v);
void print( const vector<double>& a)

};
#endif


User is offlineProfile CardPM
+Quote Post


AmitTheInfinity
RE: Queue Use In Vector Array
29 Sep, 2008 - 10:43 PM
Post #2

C Surfing ∞
Group Icon

Joined: 25 Jan, 2007
Posts: 1,258



Thanked: 64 times
Dream Kudos: 125
My Contributions
--EDIT--
can't the vector object be the member of queue class? that will make it easier. you can use combination of functions from vector class to make it work like queue.

e.g. to check whether queue is empty, you have empty method for vector, to add element in queue send back as index and value to vectors put_value method.

This post has been edited by AmitTheInfinity: 29 Sep, 2008 - 10:49 PM
User is offlineProfile CardPM
+Quote Post

baavgai
RE: Queue Use In Vector Array
30 Sep, 2008 - 03:26 AM
Post #3

Dreaming Coder
Group Icon

Joined: 16 Oct, 2007
Posts: 3,572



Thanked: 268 times
Dream Kudos: 525
Expert In: C, C++, Java, C#, ASP.NET, PHP, Perl, Python, Oracle, SQL Server, MySql, HTML, JavaScript, Lua, Cheese

My Contributions
I'd hide the vector, the user of your Queue class doesn't want to have to know about it. Your Queue can be a wrapper for Vector:
cpp

#include <Vector.h>

class Queue {
private:
int size;
Vector *innerVector;
public:
void Queue(int capacity); // init the Vector and size=0
~Queue(); // you're holding a Vector instance, please clean it up
void push(double p); // add to queue
double peek(); // look at next value, don't remove it
double pop(); // remove next value from queue
bool isFull();
double empty();
void print();
};

void Queue::push(double p) {
innerVector->put_value(++size, p);
}


User is offlineProfile CardPM
+Quote Post

chuynh08
RE: Queue Use In Vector Array
30 Sep, 2008 - 07:42 AM
Post #4

New D.I.C Head
*

Joined: 29 Sep, 2008
Posts: 2


My Contributions
QUOTE(baavgai @ 30 Sep, 2008 - 04:26 AM) *

I'd hide the vector, the user of your Queue class doesn't want to have to know about it. Your Queue can be a wrapper for Vector:
cpp

#include <Vector.h>

class Queue {
private:
int size;
Vector *innerVector;
public:
void Queue(int capacity); // init the Vector and size=0
~Queue(); // you're holding a Vector instance, please clean it up
void push(double p); // add to queue
double peek(); // look at next value, don't remove it
double pop(); // remove next value from queue
bool isFull();
double empty();
void print();
};

void Queue::push(double p) {
innerVector->put_value(++size, p);
}



User is offlineProfile CardPM
+Quote Post

Reply to this topicStart new topic

Time is now: 7/4/09 02:45PM

Live C++ Help!

Be Social

Dream.In.Code RSS Feed Dream.In.Code LinkedIn Group Follow Us On Twitter Fan Us On Facebook

C++ Tutorials

Reference Sheets

C++ Snippets

DIC Chatroom

Bye Bye Ads

Monthly Drawing

Thumb Drive

Top Contributors

Top 10 Kudos This Month