Vector Table

K

kittykat

Hey everyone,
I know this is a stupid question, BUT, i have read both the c++ books i
have at home, and have searched through several websites...but i still
can't find the answer. The question is, is there such a thing called
"Vector Table" that is already a function in C++?

By function i mean, like array.

I have written some code that would create the Vector Table, but i was
just wondering if there was a simpler way?

Thanx in advance.
 
J

Jonathan Turkanis

kittykat said:
Hey everyone,
I know this is a stupid question,

I wouldn't call it stupid. Inscrutable, maybe.
BUT, i have read both the c++ books i
have at home,

Which books? Maybe they're among the many horrible C++ books.
and have searched through several websites...but i still
can't find the answer. The question is, is there such a thing called
"Vector Table" that is already a function in C++?

"Vector Table" is not a legal function name, since it contains a space character
;-)
By function i mean, like array.

Here's where your question starts to get murky. "array" isn't a (standard
library) function in C++. So "Vector Table" and "array" are similar ("like") in
that neither is a function in C++.
I have written some code that would create the Vector Table, but i was
just wondering if there was a simpler way?

I wouldn't be suprised. But you'll have to explain what your code does.
Thanx in advance.

This is a dangerous practice -- you really should read what I've written before
thanking me ;-)

Jonathan
 
K

kittykat

:) i mean, is there a variable, like array, where you can write something
like vecTable[12], and that would create a vecTable with 12 rows for
example?
 
A

adbarnet

You can instantiate a std::vector and have it create space for the number of
elements you specify:

typedef std::vector<Type> vecTypes;
vecTypes myTypeVector(12);

would create space for 12 'Types', and call the int default constructor for
each one.

You can also use resize on constructed vectors to make them the size you
want.
 
K

kittykat

Do all the elements of a Vector Table? have to be of the same data type?
for example, could it have rows with letters, and columns with integers?

0 1 2 3 4 5 6
A
B
C
D
 
N

news-east

Don't know what you mean...

Are you talking about indexing into your table with different types? - If
so, then:

typedef std::map<int, TableElementType> rowData;
typedef std::map<char, RowData> dataTable;

would work:
dataTable tbl;
TableElementType t = tbl['A'][2];

and there are alternatives - but the important thing is the data-type of the
elements themselves...
 
J

Jon Bell

Do all the elements of a Vector Table? have to be of the same data type?

Can you give a specific example of a Vector Table, with some example data?
I've *never* seen the term "Vector Table" before your first posting about
them, either in a C++ context or an any other context. I just did a
Google search on "vector table" (with the quotes, to keep the words
together) and got some references to hardware interrupts in
microprocessors. Somehow I doubt that's what you're asking about. :)
 
H

Howard

kittykat said:
Do all the elements of a Vector Table? have to be of the same data type?
for example, could it have rows with letters, and columns with integers?

0 1 2 3 4 5 6
A
B
C
D

You're not making much sense here. What's a "Vector Table"? What you're
showing above is a display of "headers" for columns and rows of some sort of
data table. But there is no data displayed in any of the "cells". Your
questions ask about two unrelated things.

"Do all elements have to be the same type?" Well, that depends upon what
you mean by "type". You can store strings in the cells, and those strings
can be numbers or letters or puncuation or whatever. Alternatively, you can
have a vector of vectors (or an array of arrays, if you want to do things
the hard way and not make use of the std classes). Then, each vector can
hold a given type of data (such as integer, string, char, double). Or, you
can store a base class object in every cell, and let polymorphism handle the
details of what's in the cell and how to display it.

But none of that has anything to do with "rows" or "columns". That's all up
to how you output the data (to a screen, for example). You merely write out
the data however you want. Just because you have an array X[4][5] doesn't
mean there are four "rows" and five "columns", or vice-versa. You're free
to display those however you want.

And how you display the "headers" for those rows or columns is also
completely up to you. You don't even have to store that information
anywhere. When outputting the data, you can simply write the "column" index
across the top of the page, and when writing each row out, you can simply
add the "row" index to the value for the letter 'A' to generate the other
letters.

The important thing is really what you're trying to display as data in the
actual cells, which you haven't said.

-Howard
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,184
Messages
2,570,978
Members
47,561
Latest member
gjsign

Latest Threads

Top