C++ :: Defining Vector In Header File?
Feb 17, 2012
Suppose I have the following sample header file test.h
Code:
#include "myCommon.h"
class Test {
public:
Test();
vector<vector<vector<double>>> vI3(dim1, vector<vector<double>> (dim2, vector<double> (dim2, 0.0f)));
private:
fillVector();
}
In above test.h dim1 and dim2 are defined in a different header file, i.e. myCommon.h
Code:
const long dim1 = 40;
enum dimVector {
RED,
GREEN,
dim2
};
However, it gives the errors when I compile: variable "dim1" is not a type name and for variable "dim2" it complains about a duplicate parameter name.
The declarations of dim1 and dim2 should stay in myCommon.h. They can also be defined in myCommon.cpp if needed, but can't go into test.h.
View 3 Replies
ADVERTISEMENT
Oct 6, 2014
Basically, I have made a program which implements the platform specific layers (such as entry function, file loading, timing functions etc.) that gets compiled into a .exe (or platform equivalent).
But I want to make this portable and reusable across other projects, so the entry function for the platform will call the function "AppMain" which is the generic main function that is not reliant on the underlying platform etc. (i.e defined in a .h file that the project module will implement).
Ideally I would want to build the AppMain code into its own library. However, This AppMain code would want access to the Platform functions such as the functions compiled into the .exe.
This has confused me somewhat and has forced me to build both the AppMain module and the Platform Code into the same exe file so they can use each others functions.
Is there any way I can create a header file (with all the function prototypes in) but they do not get implemented in the Platform code but rather they can be 'guaranteed' to be available at runtime?
Here is what I am trying to achieve in a high level view:
win32layer.cpp: (implements all the functions defined in Platform.h)
#include <AppMain.h>
int main(int argc, char** argv) {
//call AppMain
return AppMain(argc, argv);
[Code] ....
in this scenario of course I could not compile the platform functions as the application has not been created and thus appmain cannot call the platform functions because that has not been created etc....
Any way to overcome this?
View 9 Replies
View Related
Nov 7, 2014
I have a header file in which we include vector at the top. But we want to remove that include. On doing so I get compilation errors as the header file uses std::vector<> at several instances in header file so I have to forward declare the vector to solve this issue.how i can do it.
Header file :
#ifndef MKLMulticlassOPTIMIZATIONBASE_H_
#define MKLMulticlassOPTIMIZATIONBASE_H_
#include <shogun/lib/config.h>
#include <vector>
#include <shogun/base/SGObject.h>
namespace shogun {
[Code]...
View 13 Replies
View Related
Apr 25, 2015
I'm working on a grocery store inventory project. One part is to have a shopping cart, where customers can put in up to 20 items. Because there can be up to 20 shopping carts at one time, I want to use a vector inside the cart object to represent all the individual food items.
Here's my code,
Header:
#ifndef CART_H
#define CART_H
#include <vector>
class Cart {
public:
Cart();
Cart(std::vector< int >, std::vector< int >)
[Code] ....
View 9 Replies
View Related
Oct 26, 2014
i have this vector:
#ifndef new_thing_Inventory_h
#define new_thing_Inventory_h
#include <vector>
#include <string>
using namespace std;
class Inventory {
[code]....
so i know i need to use .push_back or .pop_back, but the program im using dosn't even recognize that inventory is a created vector.
View 6 Replies
View Related
Mar 27, 2014
I am work on building a simple parse tree and the layout of my code look like this:
Headers
pt_node.hiterator.hparsetree.h
Source files
node.cppparsetree.cppmain.cpp
I am still relatively new to C++ , and have been advised to include function definition for the member function of both pt_node class and iterator class in the node.cpp file
I particular I have declare the following iterator.h:
inline bool operator ==(const tree_iterator& rhs);
which is defined in node.cpp as:
inline bool tree_iterator::operator==(const tree_iterator& rhs) {
return (node ==rhs.node);
}
However on building I receive the following error:
undefined reference to `dnkmat001::tree_iterator::operator==(dnkmat001::tree_iterator const&)'
Why is this occurring and what measure can I take to fix my code
View 14 Replies
View Related
Jan 10, 2015
I can not seem to add a vector to my head file. I have tried many things and can't figure it out.
Compile and Compile error -
g++ -Wextra -pedantic -std=c++11 Card.cpp Card.h Deck.h Deck.cpp unit_test1.cpp ;
Deck.h:15:27: error: invalid declarator before ‘deck’
void std::vector<Card *> deck;
[Code]....
View 2 Replies
View Related
Oct 20, 2013
i've defined an strcuct in .h file and i read its variable in a method in .cpp file ,but i'v got error.
.H file:
class myclass{
public:
struct opt_struct
[Code]....
when i declare the struct without static , it doesn't recognize my struct and with static i face linker error:
Error33error LNK1120: 1 unresolved externals
View 3 Replies
View Related
Jun 7, 2012
I have a cpp app that reads in a number of files and writes revised output. The app doesn't seem to be able to open a file with a ' in the file name, such as,
N,N'-dimethylethylenediamine.mol
This is the function that opens the file :
Code:
// opens mol file, reads in rows to string vector and returns vector
vector<string> get_mol_file(string& filePath) {
vector<string> mol_file;
string new_mol_line;
// create an input stream and open the mol file
ifstream read_mol_input;
read_mol_input.open( filePath.c_str() );
[Code] ....
The path to the file is passed as a cpp string and the c version is used to open the file. Do I need to handle this as a special case? It is possible that there could be " as well, parenthesis, etc.
View 9 Replies
View Related
Feb 10, 2013
I have written my program and it works when I keep everything in the header files, and then have my main. I am now splitting them up into implementation files, but Eclipse keeps giving me errors. It gives me error at every opening brace of the constructor and functions. It says on all of them "Redefinition of (name of constructor or method), Previously declared here." What am I doing wrong, because it works in the header file?
#include "KeyValuePair.h"
template<typename Key,typename Value>
KeyValuePair<Key,Value>::KeyValuePair()
[Code] .....
View 3 Replies
View Related
Apr 12, 2014
I am working on an assignment in which i have to perform th following task
myClass itsObject1,itsObject2;
itsObject2=5000+itsObject1;
I have defined overloaded operator as follows in the header file but in the cpp file of the class it gives error.
friend vli &vli::operator + (int &a,vli &obj);
How to define it in cpp file of my class?
View 1 Replies
View Related
Sep 12, 2014
What is the right syntax for implementing the .cpp of a template class?
Consider this LinkedList.h file:
Code: #include<iostream>
#include"Iterator.h"
template <class T>
class LinkedList {
[Code] ....
How should the implementation for the LinkedList constructor, for example, should look like in the LinkedList.cpp file?
I tried this:
Code: #include "LinkedList.h"
template <class T>
LinkedList<T>::LinkedList<T>() {
// constructor
}
LinkedList<T>::~LinkedList<T>() {
// destructor
}
But the compiler wouldn't accept it.
View 4 Replies
View Related
Jan 17, 2015
lets say we have a valid class with full implementation, X. can this class be declared as forward in Y header file:
Code: class X;
class Y{
X* m_X;
}
but still be used as regular in the cpp file?
Code:
#include "Y.h"
#incldue "X.h"
T Y::function(){
m_X->doSomething();
}
visual studio prevents me from doing it , I wonder if the standard also says so.
View 2 Replies
View Related
Dec 11, 2014
I wanted to share the value of a variable from Sender Program to Receive after program and want to calculate difference between send and receive. After studying Header file concept I program following three.
Now I am struck. How to to compile? I link all these file. I used following method:
Code:
gcc Sender.c -o Sender Sender.h
gcc Receiver.c -o Receiver Student.h
Then I run Sender and after that Receiver.I per my knowledge, Receiver should give difference but it gives error :
Code:
Receiver.c: In function "main":
Receiver.c:10:42: error: "Send" undeclared (first use in this function)
printf(" Total Receive is %d
",Receive-Send);
Code:
Sender.c
#include <stdio.h>
int Send ;
void main(){
[Code] ....
View 2 Replies
View Related
May 21, 2014
I have been working a project in C++. I have TTTMain.cpp file that has all the function calls, TTTFuntions.cpp that has all the functions, I have TTT.h file that has all the prototypes and variables and additionally I have Winner.h that has enum class Winner declaration in it. Here is my block of codes:
Winner.h file:
#ifndef winner
#define winner
enum class Winner {
[Code]....
My question is when I compile this gives me error on
Winner gameSquares[] = { Empty, Empty,Empty, Empty, Empty, Empty, Empty, Empty, Empty };
with saying "invalid use of non-static data data member" and It says "Empty was not declared in this scope."
I know calling enum is very very trick.
View 3 Replies
View Related
Jul 29, 2013
I am beginner in c++ language. i'm use visual studio 2010 ultimate. the problem is i can't add c++ file(.cpp) and header file(.h).
Here the screenshot : [URL] ....
View 3 Replies
View Related
Dec 27, 2014
I made my header file. If cpp file with definitions is in project compiler knows it has to be linked, but if it's not compiler doesn't know. If I include standard library or boost I don't have to manually link cpps. How to do so including my header automatically links cpp? Maybe problem is with something else?I use VS 2013.
View 4 Replies
View Related
Jan 30, 2013
My socket.cpp program got error. it showed "socket.h: no such file or directory". I had put my header file (socket.h) in the same place with my source file.
View 1 Replies
View Related
Mar 23, 2013
1. Write a program the calculates the volume of a sphere.
Use a define to set Pi to 3.14 and a macro for the formula for the sphere.
V = 4/3PiR3.
In main ask for the radius (R).
Pass it to a function where you calculate the volume and return it to main and print the volume in main.
Use float values. (Save this program as you'll need it later.)
Code:
#include<stdio.h>
void fun (float);
main()
[Code].....
View 8 Replies
View Related
May 19, 2013
Can we put using namespace std; in a header file? Someone told me not to do it, but I don't know why...
View 2 Replies
View Related
Jun 4, 2013
I need read a file with header and I wanna print the file in output. How can I do that? I tried but not work..
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
[Code]....
View 1 Replies
View Related
Jul 24, 2013
All i want to do is modify a header of a file(.exe file). I just want to do if for fun and see what I can do with it.
View 3 Replies
View Related
Apr 11, 2013
I have a class Myclass (for the sake of the example). I have a header file 'space.h', which is following:
#include "Myclass.h"
struct Files {Myclass* new_object, int number};
But turns out in the Myclass.h, I need the struct Files, like so:void function(vector<Files> arrangement);
So I would have to include "space.h" in the Myclass.h, but this way there's going to be a double definition of struct Files, since Myclass.h includes space.h and space.h includes Myclass.h.
View 4 Replies
View Related
Oct 22, 2013
Any good/solid example on how to create a header file?
View 2 Replies
View Related
Jan 16, 2013
I have written code for a timer. with everything and i want to include this so i dont need to write or copy the reqd code each time. how do i do this?
View 9 Replies
View Related
Sep 21, 2014
I wrote a simple date class and could not get it to work until I put all the code in main(). Then it worked like a charm. I have not been able to create a separate .cpp file and get it to work with my existing main().
I tried to follow [URL] which is a closed article, with no success. I tried every combination I could think of and was unable to compile without error. (Linux Mint 17,code::blocks 13.12, G++ 4.8.2). I did finally get it to work by putting *all* my code in the .h file and #including the .h file (and nothing else) in the .cpp file. This is not how it's supposed to work.
This is unbelievable! I just tried this on another computer, same OS same version of Code::Blocks and G++.
View 2 Replies
View Related