Working on a basic class program and I'm generating two compiler errors that I'm not sure how to fix. Header file, implementation cpp and main cpp are shown below. The specific errors are shown after the code.
The file generates the second error, C2228, at lines 37-41 and 43. Basically where I tried using the second created object. Error message is "left of '.setFirstName' must have class/struct/union"
Working on a solution involving inheritance. The whole solution is pretty massive at this point so I'll just focus on the problem areas. I'm getting a lot of "redefinition" and "undefined class type" compiler errors, including C2370, 2011, 2504, and 2027, in Benefit.h, Employee.h (the constant members are a big occurance) I'm also getting 2027 and 2079 in EmployeeMain.cpp. with my Benefit and Employee object calls.
Clearly I missed something in about how to code this correctly. Sadly the course textbook focuses on general OOP theory instead on the accompanying C++ syntax.
My compiler (GCC) keeps expecting an expression where it shouldn't in 1 specific piece of my code:
int zxcNewWindow( HWND parent, TCHAR *text, zxWINDOW *kid, UINT style, int x, int y, int w, int h, int type ) // right here { *kid = zxDefWINDOW;
The project contains only 2 files right now and the settings are just the default for an empty Code::Blocks 12.11 project. Both files are in UTF-8 format (tried in ASCII too), I just cannot see why this is not compiling correctly. I'll post the files in the next two posts.
Edit: For those of you who didn't get what the error was from the above here's the full log:
mingw32-gcc.exe -Wall -g -DzxDEBUG -c C:MePrjscppzxGUImain.c -o objmain.o C:MePrjscppzxGUImain.c: In function 'zxcNewWindow': C:MePrjscppzxGUImain.c:39:10: error: expected expression before '{' token Process terminated with status 1 (0 minutes, 0 seconds) 1 errors, 0 warnings (0 minutes, 0 seconds)
I am trying to run this source code but i am getting the compiler error Expression Must Have a Constant Value. I tried making both the variables x and y constants and assigned them to a significantly big number but then i am getting the error expression must be a modifiable lvalue.I have made comments in the code in front where Visual Studio is giving me the syntax error (red squiggly line).
#include<iostream> #include <string> #include<cmath> using namespace std; int main(){ int x; int y;
I am having problems compiling this program. line 29 causes the error "left operand must be l-value".
// chap5proj.cpp : Defines the entry point for the console application. // # include <stdafx.h> # include <iostream> using namespace std; int main() { double mph, time, disPerHour, milesTrav;
I'm making a very first program. It's very little more then a simplistic calculator, but i'm having a problem with the cout function. It won't display any text what could the reasons be?
#include <iostream> #include <string> #include <sstream> using namespacestd; int main () { do { int(a);
[Code]...
Oh and i'm aware it's still riddled with numerous problems, I just have been working on the cout thing first.
Full disclosure: this is an exercise from "Sams Teach Yourself C++ in 24 Hours" by Jesse Liberty and Rogers Candenhead. This refers to Chapter 9 (Hour 9 Activity 1)
I created a class called Point, in Point.h
I created a class called Rectangle in Rectangle.h and Rectangle.cpp
If I create an int main() function in Rectangle.cpp (that includes Rectangle.h), I can compile Rectangle.cpp and run the resulting program. Fine.
Question:
I create a separate file called main.cpp. I include Rectangle.h. But now the compiler complains.
Code: $ g++ main.cpp -o main /tmp/cc38JIph.o: In function `main': main.cpp:(.text+0x26): undefined reference to `Rectangle::Rectangle(int, int, int, int)' main.cpp:(.text+0x32): undefined reference to `Rectangle::getArea() const' collect2: ld returned 1 exit status If I can create a class in Point.h and use it in Rectangle.h, why can I not just use Rectangle in main.cpp?
And the files, of course:
file: main.cpp Code: #include <iostream> #include "Rectangle.h" using std::cout; using std::endl;
Well, I thought I had this program working but now I'm getting the above referenced compiler error. The program is just a basic user interface. It is for a classwork assignment.
The program is to accept user information as a string, convert it (if needed) to either the int or double variable, and then display the result. I'm using stringstream convert to make the change between types, but I'm not sure if I'm using it right (that might be what's causing the error, I'm not sure). Line 36-37 generates the error.
Code: #include <iostream> #include <iomanip> #include <sstream> using namespace std;
Having issues with program to create a shape area calculator with circle square and rectangle. the uml goes as follows:
Where the UML has shape as the abstract class with public area():double, getName():string,and getDimensions:string, rectangle derived from shape with protected height, and width, and a public rectangle(h:double, w:double), followed by a derived square from rectangle with just a public square(h:double), and finally a circle derived from shape with a private radius, and a public circle(r:double).
[URL]
Have linked my program and it is giving me the following compiler errors:
error: 'qdebug' was not declared in this scope line 15 of main
error: cannot declare variable 'shp' to be of abstract type 'shape' line 22 of main
error: expected primary-expression before ')' token lines 29 -31 of main
(note previously had qstring as a header file yet changed to string since I was getting error qstring was not declared in this scope.)
I am trying to compile the files file1.c and file2.c using Mingw (gcc)
///////////////////// header.h //////////////////// #ifndef header #define header int variable; #endif
[Code] ....
I would have expected a multiple defnition error when linking the two .c files. as in both the files, with the 'int variable' command, the variable 'variable' is defined (memory allocated) and during linking the linker doesnot know which variable to link to.
I get an error though when i use "int variable =123;" in the header file instead of the "int variable;" statement. i dont understand as in both the cases the variable is defined (memory is allocated) and the linker should give a multiple definition error.
I have been implementing a Hash Table class made, and ran into a bit of a problem in my Delete function. I have the hash table made up as
vector<list<HashNode<T,X>>> m_Table
My problem is when I iterate through the vector, and then the list in that current element to try and find the Node I want to delete, the STL list class gives me the error:
Error1error C2678: binary '==' : no operator found which takes a left-hand operand of type 'HashNode<T,X>' (or there is no acceptable conversion)
I use a SEH handler in my code, like this: __try { .. Some codes ... } __except( EXCEPTION_EXECUTE_HANDLER ) { TRACE(_T("Exception")); } but get the following compiler errors:
1>e: est.cpp(3310): warning C4509: nonstandard extension used: 'CMyClass::Test' uses SEH and 'iterator' has destructor 1> e: est.cpp(3290) : see declaration of 'iterator' e: est.cpp(3450): error C2712: Cannot use __try in functions that require object unwinding
I have a project that is essentially a hot pot of C/asm (naked functions etc). The code gets injected into another EXE. It works fine when compiled in Visual C++ 6 but when compiled in Visual Studio 2008 it compiles fine but falls over in use.
Are there certain settings I need to look out for? I have optimization disabled and as far as I can tell the command line options for compiler/linker are the same (given the differences).
I have opened both builds in IDA and the 2008 build has more import and offset jumps are in different places.
Write a program that computes how many feet an object falls in 1 second, 2 seconds, etc., up to 12 seconds.
1.Have a procedure called FallingDistance which has one input parameter, seconds, and one output parameter, distance. 2. Compute the distance in feet an object falls using this formula: d = ½ gt2 (where g = 32.2) 3. The main program should call FallingDistance within a loop which passes the values 1 through 12 as arguments. 4. Print a table with seconds and falling distance in feet.
In C++, the procedure is called a function. Instead of using an output parameter, your C++ function FallingDistance should return a result of type double. This is what I created:
#include <iostream> #include <cmath> #include <string> using namespace std; const double g =32.2; double fallingDistance(double);
This actually should work, because it is passing address of polymorphisms object.I have tried changing prototype of test in Data.h, but failed.passing object address/pointers in C++.
This is my question : Define a class named HOUSING in C++ with the following descriptions:
Private members REG_NO integer(Ranges 10 - 1000) NAME Array of characters(String) TYPE Character COST Float
Public Members -Function Read_Data( ) to read an object of HOUSING type -Function Display() to display the details of an object -Function Draw Nos( ) to choose and display the details of 2 houses selected randomly from an array of 10 objects of type HOUSING Use random function to generate the registration nos. to match with REGNO from the array.
Now I' trying to do this by this way
Code: #include <iostream.h> #include <conio.h> #include <stdlib.h> class housing { private: int REG_NO; char NAME[10];
[Code] .....
I am trying to pass the entire array of object in DrawNos(). but getting compilation error -
32: 'housing:rawNos(housing * *)' is not a member of 'housing' 48: Structure required on left side of . or .*
What is the problem? How can I pass the array of object in function and use it.