Compilar uma classe com o GCC
Não tenho a certeza se cometi um erro sintático, mas fiz uma aula e obtive este erro quando tento compilá-lo....
dining.h:7:1: error: unknown type name ‘class’
dining.h:7:17: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
funciona bem com o g++ , Mas tenho de usar o gcc...
Este é o código do problema..#ifndef DINING_H
#define DINING_H
class DiningSet {
public:
DiningSet();
~DiningSet();
void getSize(); // accepts X and Y dimentions of the table (in metres)
//void surfaceArea(int,int); // Calculates Surface Area of table (in square metres)
void numChairs(); // accepts number of chairs
void cushionColour(); // accepts a cushion colour
void woodType(); // accepts wood type
void priceComp(); // computes a price of set
void purchaseDet(); // displays details of purchase
void purchasePrice(); // displays price of purchace
private:
int X, Y; // Dimentions of table
float Surface;
int chairs; // Number of chairs
char colour; // colour of cushion (should be dynamic array)
char wood;
float totalPrice;
};
#endif
0
Author: Carl Norum, 2012-03-13
1 answers
gcc
por omissão, compilar o seu programa como C, Uma vez que é um programa C++, isso não vai funcionar. Use a opção -x c++
, ou mude o nome do seu ficheiro para ter uma extensão .C
(o caso é importante) ou .cpp
.
Editar: na verdade, você pode usar um monte de extensões de nomes de ficheiros para indicar que o seu programa é c++. De esta ligação:
.cc, .cp, .cxx,.cpp,.C++, .C
Edit 2: o seu comentário em baixo faz-me pensar que está a tentar colocar o ficheiro de cabeçalho na linha de comando. Não faças isso. Basta compilar os ficheiros de código e incluir os cabeçalhos conforme necessário.
3
Author: Carl Norum, 2013-01-30 20:00:37