Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > Compiler Error

Reply
Thread Tools

Compiler Error

 
 
elShazo@gmail.com
Guest
Posts: n/a
 
      04-22-2007
I am getting this error on compile "expected unqualified-id at end of
input".

Here is the block of code that generates the error:

/* Proxy unmountSource I/O */
/* Method unmountSource */
void unmountSource(string theSource)
{
string source = theSource;
string unmount = "unmount ";
string unmountFull = unmount + source;
string rmdir = "rmdir ";
string rmdirFull = rmdir + source;
system(unmountFull.c_str());
system(rmdirFull.c_str());
}
/* EMethod */
/* EProxy */

Compiler points to the line that has the end curly brace. Any ideas or
at least what the error means?

 
Reply With Quote
 
 
 
 
Ian Collins
Guest
Posts: n/a
 
      04-22-2007
http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:
> I am getting this error on compile "expected unqualified-id at end of
> input".
>
> Here is the block of code that generates the error:
>
> /* Proxy unmountSource I/O */
> /* Method unmountSource */
> void unmountSource(string theSource)
> {
> string source = theSource;
> string unmount = "unmount ";
> string unmountFull = unmount + source;
> string rmdir = "rmdir ";
> string rmdirFull = rmdir + source;
> system(unmountFull.c_str());
> system(rmdirFull.c_str());
> }
> /* EMethod */
> /* EProxy */
>
> Compiler points to the line that has the end curly brace. Any ideas or
> at least what the error means?
>

There's nothing wrong with the above, assuming string is an alias for
std::string, so the error is somewhere else.

Post a minimal compilable example that demonstrates your problem.

--
Ian Collins.
 
Reply With Quote
 
 
 
 
elShazo@gmail.com
Guest
Posts: n/a
 
      04-22-2007
Here is the full code (its fairly short):

/*
* Installer for TrainTrafficKing
* Will allow user to install game to directory of choice
*/


#include <iostream>
#include <fstream>


using namespace std;

class install
{
/*void mountSource(string);
string getDestination();
void checkDesExists(string);
void createDest(string);
void installGame(string, string);
void unmountSource(string); */

/* Proxy Main Logic */
/* Method Main */
int main()
{

string destination;
string source = "/mnt/TrafficKing";

cout<<"Preparing to install Train TrafficKing..." << "/n" << "You must
have root privileges to install this game." << "/n" << "If you do NOT
have root privileges, please contact your System Administrator." << "/
n" ;

mountSource(source);
destination = getDestination();
createDest(destination);
installGame(source, destination);
unmountSource(source);
cout << "Thank you for installing Train TrafficKing";
}
/* EMethod */
/* EProxy */

/* Proxy mountSource I/O */
/* Method mountSource */
void mountSource(string theSource)
{

string mkdir = "mkdir ";
string source = theSource;
string mkdirFull = mkdir + source;
string mount = "mount /dev/cdrom -t 9660 ";
string mountFull = mount + source;
system(mkdirFull.c_str());
system(mountFull.c_str());
}
/* EMethod */
/* EProxy */

/* Proxy getDestination I/O */
/* Method getDestination */
string getDestination()
{
string destination;
cout<< "Please enter a destination to install Train TrafficKing";
cin >> destination;
return destination;
}
/* EMethod */
/* EProxy */



/* Proxy createDest I/O */
/* Method createDest */
void createDest(string theDestination)
{
string destination = theDestination;
string rmdir = "rm -r ";
string rmdirFull = rmdir + destination;
string mkdir = "mkdir ";
string mkdirFull = mkdir + destination;
system(rmdirFull.c_str());
system(mkdirFull.c_str());
}
/* EMethod */
/* EProxy */

/* Proxy installGame I/O */
/* Method installgame */
void installGame(string theSource, string theDestination)
{
string destination = theDestination;
string source = theSource;
string copy = "cp -R ";
string copyFull = copy + source + " " + destination;
system(copyFull.c_str());
}
/* EMethod */
/* EProxy */

/* Proxy unmountSource I/O */
/* Method unmountSource */
void unmountSource(string theSource)
{
string source = theSource;
string unmount = "unmount ";
string unmountFull = unmount + source;
string rmdir = "rmdir ";
string rmdirFull = rmdir + source;
system(unmountFull.c_str());
system(rmdirFull.c_str());
}
/* EMethod */
/* EProxy */

/* End Installer */
}

 
Reply With Quote
 
Ian Collins
Guest
Posts: n/a
 
      04-22-2007
(E-Mail Removed) wrote:
> Here is the full code (its fairly short):
>

I can see two reasons why it won't compile:

> int main()
> {
>
> string destination;
> string source = "/mnt/TrafficKing";
>
> cout<<"Preparing to install Train TrafficKing..." << "/n" << "You must
> have root privileges to install this game." << "/n" << "If you do NOT
> have root privileges, please contact your System Administrator." << "/
> n" ;
>
> mountSource(source);
> destination = getDestination();
> createDest(destination);
> installGame(source, destination);
> unmountSource(source);
> cout << "Thank you for installing Train TrafficKing";
> }


Missing return.
> /* End Installer */
> }
>

Missing semicolon.

--
Ian Collins.
 
Reply With Quote
 
Salt_Peter
Guest
Posts: n/a
 
      04-23-2007
On Apr 22, 5:57 pm, (E-Mail Removed) wrote:
> Here is the full code (its fairly short):
>
> /*
> * Installer for TrainTrafficKing
> * Will allow user to install game to directory of choice
> */
>
> #include <iostream>
> #include <fstream>
>
> using namespace std;
>
> class install
> {
> /*void mountSource(string);
> string getDestination();
> void checkDesExists(string);
> void createDest(string);
> void installGame(string, string);
> void unmountSource(string); */
>
> /* Proxy Main Logic */
> /* Method Main */
> int main()
> {
>
> string destination;
> string source = "/mnt/TrafficKing";
>
> cout<<"Preparing to install Train TrafficKing..." << "/n" << "You must
> have root privileges to install this game." << "/n" << "If you do NOT
> have root privileges, please contact your System Administrator." << "/
> n" ;
>
> mountSource(source);
> destination = getDestination();
> createDest(destination);
> installGame(source, destination);
> unmountSource(source);
> cout << "Thank you for installing Train TrafficKing";}
>
> /* EMethod */
> /* EProxy */
>
> /* Proxy mountSource I/O */
> /* Method mountSource */
> void mountSource(string theSource)
> {
>
> string mkdir = "mkdir ";
> string source = theSource;
> string mkdirFull = mkdir + source;
> string mount = "mount /dev/cdrom -t 9660 ";
> string mountFull = mount + source;
> system(mkdirFull.c_str());
> system(mountFull.c_str());}
>
> /* EMethod */
> /* EProxy */
>
> /* Proxy getDestination I/O */
> /* Method getDestination */
> string getDestination()
> {
> string destination;
> cout<< "Please enter a destination to install Train TrafficKing";
> cin >> destination;
> return destination;}
>
> /* EMethod */
> /* EProxy */
>
> /* Proxy createDest I/O */
> /* Method createDest */
> void createDest(string theDestination)
> {
> string destination = theDestination;
> string rmdir = "rm -r ";
> string rmdirFull = rmdir + destination;
> string mkdir = "mkdir ";
> string mkdirFull = mkdir + destination;
> system(rmdirFull.c_str());
> system(mkdirFull.c_str());}
>
> /* EMethod */
> /* EProxy */
>
> /* Proxy installGame I/O */
> /* Method installgame */
> void installGame(string theSource, string theDestination)
> {
> string destination = theDestination;
> string source = theSource;
> string copy = "cp -R ";
> string copyFull = copy + source + " " + destination;
> system(copyFull.c_str());}
>
> /* EMethod */
> /* EProxy */
>
> /* Proxy unmountSource I/O */
> /* Method unmountSource */
> void unmountSource(string theSource)
> {
> string source = theSource;
> string unmount = "unmount ";
> string unmountFull = unmount + source;
> string rmdir = "rmdir ";
> string rmdirFull = rmdir + source;
> system(unmountFull.c_str());
> system(rmdirFull.c_str());}
>
> /* EMethod */
> /* EProxy */
>
> /* End Installer */
>
> }


What follows is not a class:

class A
{
}

But this is:

class A
{
};

You should
#include <string>
if you plan to use std::string and pass it by reference to functions
or you'll end up invoking std::string copy ctor unneccessarily. Not to
mention that you'ld be modifying a local only.

void foo( std::string& r_s ) // or const std::string&
{
// do stuff with r_s
}

All of the above is basic, fundamental, unavoidable, required
knowledge.
What book are you reading?


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Compiler Error Message: The compiler failed with error code -1073741819 Ram ASP .Net 0 09-13-2005 09:52 AM
Why is a JIT compiler faster than a byte-compiler RickMuller Python 4 03-26-2005 04:30 PM
Compiler compiler with C++ as output Andrey Batyuck C++ 3 05-17-2004 08:17 PM
Can we use <compiler> tag to avoid RunTime Compiler error? Jack Wright ASP .Net 5 01-19-2004 04:36 PM
Compiler Error Message: The compiler failed with error code 128. Yan ASP .Net 0 07-21-2003 10:49 PM



Advertisments