DaniWeb IT Discussion Community

DaniWeb IT Discussion Community (http://www.daniweb.com/forums/index.php)
-   C++ (http://www.daniweb.com/forums/forum8.html)
-   -   error C2059: syntax error : 'namespace' (http://www.daniweb.com/forums/thread89385.html)

jarv Sep 12th, 2007 12:02 pm
error C2059: syntax error : 'namespace'
 
can someone please help me here?!

jarv Sep 12th, 2007 12:04 pm
Re: error C2059: syntax error : 'namespace'
 
i am using Vista Ultimate, does this matter?

vishesh Sep 12th, 2007 12:10 pm
Re: error C2059: syntax error : 'namespace'
 
Whats the code, so that we could see whats happening. Here's an MSDN link which show some common reason to this specific error.

Ancient Dragon Sep 12th, 2007 12:14 pm
Re: error C2059: syntax error : 'namespace'
 
Quote:

Originally Posted by jarv (Post 432885)
i am using Vista Ultimate, does this matter?

No -- that error has nothing at all to do with the operating system. Without seeing your code I guess that you left out a semicolon somewhere.

jarv Sep 12th, 2007 12:38 pm
Re: error C2059: syntax error : 'namespace'
 
// speedgame.cpp : main project file.

#include "stdafx.h"
#include "Form1.h"

using namespace speedgame;

[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
        // Enabling Windows XP visual effects before any controls are created
        Application::EnableVisualStyles();
        Application::SetCompatibleTextRenderingDefault(false);

        // Create the main window and run it
        Application::Run(gcnew Form1());
        return 0;
}

jarv Sep 12th, 2007 12:39 pm
Re: error C2059: syntax error : 'namespace'
 
and my main form code:

#pragma once


namespace speedgame {

        using namespace System;
        using namespace System::ComponentModel;
        using namespace System::Collections;
        using namespace System::Windows::Forms;
        using namespace System::Data;
        using namespace System::Drawing;

        /// <summary>
        /// Summary for Form1
        ///
        /// WARNING: If you change the name of this class, you will need to change the
        ///          'Resource File Name' property for the managed resource compiler tool
        ///          associated with all .resx files this class depends on.  Otherwise,
        ///          the designers will not be able to interact properly with localized
        ///          resources associated with this form.
        /// </summary>
        public ref class Form1 : public System::Windows::Forms::Form
        {
        public:
                Form1(void)
                {
                        InitializeComponent();
                        //
                        //TODO: Add the constructor code here
                        //
                }

        protected:
                /// <summary>
                /// Clean up any resources being used.
                /// </summary>
                ~Form1()
                {
                        if (components)
                        {
                                delete components;
                        }
                }
        private: System::Windows::Forms::ToolTip^  tipControl;
        private: System::Windows::Forms::Timer^  tmrControl;
        private: System::Windows::Forms::TextBox^  txtDisplay;
        private: System::Windows::Forms::TextBox^  txtEntry;
        private: System::Windows::Forms::Label^  lblInstructions;
        private: System::Windows::Forms::Label^  lblSourceText;
        private: System::Windows::Forms::Label^  lblEntryText;
        private: System::Windows::Forms::StatusStrip^  stsControl;
        private: System::Windows::Forms::ToolStripStatusLabel^  stsLabel;
        protected:

        protected:








        private: System::Windows::Forms::Button^  btnGo;
        private: System::Windows::Forms::Button^  btnDone;
        private: System::Windows::Forms::Button^  btnExit;



        private: System::ComponentModel::IContainer^  components;

        private:
                /// <summary>
                /// Required designer variable.
                /// </summary>
                Int16 intWrong; //Tracks number of strikes
                Int16 intCount; //Tracks number of tries
                Int16 intTimer; //Tracks elapsed time

#pragma region Windows Form Designer generated code
                /// <summary>
                /// Required method for Designer support - do not modify
                /// the contents of this method with the code editor.
                /// </summary>
                void InitializeComponent(void)
                {
                        this->components = (gcnew System::ComponentModel::Container());
                        this->tipControl = (gcnew System::Windows::Forms::ToolTip(this->components));
                        this->txtDisplay = (gcnew System::Windows::Forms::TextBox());
                        this->txtEntry = (gcnew System::Windows::Forms::TextBox());
                        this->btnGo = (gcnew System::Windows::Forms::Button());
                        this->btnDone = (gcnew System::Windows::Forms::Button());
                        this->btnExit = (gcnew System::Windows::Forms::Button());
                        this->tmrControl = (gcnew System::Windows::Forms::Timer(this->components));
                        this->lblInstructions = (gcnew System::Windows::Forms::Label());
                        this->lblSourceText = (gcnew System::Windows::Forms::Label());
                        this->lblEntryText = (gcnew System::Windows::Forms::Label());
                        this->stsControl = (gcnew System::Windows::Forms::StatusStrip());
                        this->stsLabel = (gcnew System::Windows::Forms::ToolStripStatusLabel());
                        this->stsControl->SuspendLayout();
                        this->SuspendLayout();
                        //
                        // txtDisplay
                        //
                        this->txtDisplay->Location = System::Drawing::Point(40, 55);
                        this->txtDisplay->Name = L"txtDisplay";
                        this->txtDisplay->ReadOnly = true;
                        this->txtDisplay->Size = System::Drawing::Size(675, 20);
                        this->txtDisplay->TabIndex = 0;
                        this->tipControl->SetToolTip(this->txtDisplay, L"Displays source text string");
                        //
                        // txtEntry
                        //
                        this->txtEntry->Location = System::Drawing::Point(40, 121);
                        this->txtEntry->Name = L"txtEntry";
                        this->txtEntry->ReadOnly = true;
                        this->txtEntry->Size = System::Drawing::Size(675, 20);
                        this->txtEntry->TabIndex = 1;
                        this->tipControl->SetToolTip(this->txtEntry, L"Type your text here");
                        //
                        // btnGo
                        //
                        this->btnGo->Location = System::Drawing::Point(43, 216);
                        this->btnGo->Name = L"btnGo";
                        this->btnGo->Size = System::Drawing::Size(75, 23);
                        this->btnGo->TabIndex = 6;
                        this->btnGo->Text = L"GO";
                        this->tipControl->SetToolTip(this->btnGo, L"Display new text string");
                        this->btnGo->UseVisualStyleBackColor = true;
                        this->btnGo->Click += gcnew System::EventHandler(this, &Form1::btnGo_Click);
                        //
                        // btnDone
                        //
                        this->btnDone->Enabled = false;
                        this->btnDone->Location = System::Drawing::Point(639, 216);
                        this->btnDone->Name = L"btnDone";
                        this->btnDone->Size = System::Drawing::Size(75, 23);
                        this->btnDone->TabIndex = 7;
                        this->btnDone->Text = L"Done";
                        this->tipControl->SetToolTip(this->btnDone, L"Check typing");
                        this->btnDone->UseVisualStyleBackColor = true;
                        this->btnDone->Click += gcnew System::EventHandler(this, &Form1::btnDone_Click);
                        //
                        // btnExit
                        //
                        this->btnExit->Location = System::Drawing::Point(639, 9);
                        this->btnExit->Name = L"btnExit";
                        this->btnExit->Size = System::Drawing::Size(75, 23);
                        this->btnExit->TabIndex = 8;
                        this->btnExit->Text = L"Exit";
                        this->tipControl->SetToolTip(this->btnExit, L"Exit game");
                        this->btnExit->UseVisualStyleBackColor = true;
                        //
                        // tmrControl
                        //
                        this->tmrControl->Interval = 1000;
                        this->tmrControl->Tick += gcnew System::EventHandler(this, &Form1::tmrControl_Tick);
                        //
                        // lblInstructions
                        //
                        this->lblInstructions->AutoSize = true;
                        this->lblInstructions->Location = System::Drawing::Point(12, 9);
                        this->lblInstructions->Name = L"lblInstructions";
                        this->lblInstructions->Size = System::Drawing::Size(511, 13);
                        this->lblInstructions->TabIndex = 2;
                        this->lblInstructions->Text = L"Click Go to begin. You have 15 seconds to type the text displayed in the source t"
                                L"ext field exactly as shown.";
                        //
                        // lblSourceText
                        //
                        this->lblSourceText->AutoSize = true;
                        this->lblSourceText->Location = System::Drawing::Point(40, 39);
                        this->lblSourceText->Name = L"lblSourceText";
                        this->lblSourceText->Size = System::Drawing::Size(68, 13);
                        this->lblSourceText->TabIndex = 3;
                        this->lblSourceText->Text = L"Source Text:";
                        //
                        // lblEntryText
                        //
                        this->lblEntryText->AutoSize = true;
                        this->lblEntryText->Location = System::Drawing::Point(40, 105);
                        this->lblEntryText->Name = L"lblEntryText";
                        this->lblEntryText->Size = System::Drawing::Size(79, 13);
                        this->lblEntryText->TabIndex = 4;
                        this->lblEntryText->Text = L"Enter text here:";
                        //
                        // stsControl
                        //
                        this->stsControl->Items->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItem^  >(1) {this->stsLabel});
                        this->stsControl->Location = System::Drawing::Point(0, 270);
                        this->stsControl->Name = L"stsControl";
                        this->stsControl->Size = System::Drawing::Size(773, 22);
                        this->stsControl->TabIndex = 5;
                        this->stsControl->Text = L"statusStrip1";
                        //
                        // stsLabel
                        //
                        this->stsLabel->Name = L"stsLabel";
                        this->stsLabel->Size = System::Drawing::Size(118, 17);
                        this->stsLabel->Text = L"toolStripStatusLabel1";
                        //
                        // Form1
                        //
                        this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
                        this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
                        this->ClientSize = System::Drawing::Size(773, 292);
                        this->Controls->Add(this->btnExit);
                        this->Controls->Add(this->btnDone);
                        this->Controls->Add(this->btnGo);
                        this->Controls->Add(this->stsControl);
                        this->Controls->Add(this->lblEntryText);
                        this->Controls->Add(this->lblSourceText);
                        this->Controls->Add(this->lblInstructions);
                        this->Controls->Add(this->txtEntry);
                        this->Controls->Add(this->txtDisplay);
                        this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::FixedSingle;
                        this->Name = L"Form1";
                        this->StartPosition = System::Windows::Forms::FormStartPosition::CenterScreen;
                        this->Text = L"The Speed Game";
                        this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
                        this->stsControl->ResumeLayout(false);
                        this->stsControl->PerformLayout();
                        this->ResumeLayout(false);
                        this->PerformLayout();

                }
#pragma endregion
        private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) {
                                //set begginning data values
                                intWrong = 0;
                                intCount = 0;
                                intTimer = 0;
                        }
private: System::Void btnGo_Click(System::Object^  sender, System::EventArgs^  e) {
                        //Display game sentences according to level
                        if( intCount == 0 )
                                txtDisplay->Text = "Once upon a time there where three little pigs.";
                        if( intCount == 1 )
                                txtDisplay->Text = "In days gone by times where hard but the people were strong.";
                        if( intCount == 2 )
                                txtDisplay->Text = "Once in awhile something speacial happens even to the worst of people.";
                        if( intCount == 3 )
                                txtDisplay->Text = "When injustice rears its ugly hea, it is the duty of all good.";
                        if( intCount == 4 )
                                txtDisplay->Text = "It has been said that in the end there can only be one. Let that one be mighty Molly!";
                        btnDone->Enabled = true; //Activate done button
                        btnGo->Enabled = false; //Disable Go button
                        //Allow text to be entered
                        txtEntry->ReadOnly = false;
                        //Activate Timer
                        tmrControl->Enabled = true;
                        intTimer = 0;
                        txtEntry->Focus();

                }
private: System::Void btnDone_Click(System::Object^  sender, System::EventArgs^  e) {
                        //Clear out status bar text
                        stsControl->Text = "";
                        //Deactivate Timer so it doesn't keep going
                        tmrControl->Enabled = false;
                        //Make sure player entered something
                        if( String::IsNullOrEmpty( txtEntry->Text ) )
                        {
                                //Show error
                                MessageBox::Show( "Error: You must enter something!" );
                                //reset game
                                txtDisplay->Text = "";
                                btnDone->Enabled = false;
                                btnGo->Enabled = true;
                                txtEntry->ReadOnly = true;
                                intTimer = 0;
                                btnGo->Focus;
                                return;
                        }
                        if( String::Compare( txtEntry->Text, txtDisplay->Text ) == 0 )
                        {
                                //handle Correct answer
                                MessageBox::Show( "Match! You typed the string in correctly!" );
                                intCount += 1;
                                intTimer = 0;
                        }
                        else
                        {
                                //handle incorrect answer
                                MessageBox::Show( String::Concat( "Strike ",
                                        intWrong.ToString(), "! You made at least",
                                        " one typo." ) );
                                intTimer = 0;
                        }
                        //get set up for the next level
                        txtEntry->Text = "";
                        txtDisplay->Text = "";
                        btnDone->Enabled = false;
                        btnGo->Enabled = true;
                        txtEntry->ReadOnly = true;
                        intTimer = 0;
                        btnGo->Focus();
                        //handle 3 strikes
                        if( intWrong == 3 )
                        {
                                //inform play he/she is a begginer
                                if( intCount < 2 )
                                {
                                        MessageBox::Show( "Game Over! Your "
                                                "typing skill level is Beginner. "
                                                "Please play again!" );
                                        intCount = 0;
                                        intWrong = 0;
                                        return;
                                }
                                //inform play he/she is intermediate
                                if( intCount < 4 )
                                {
                                        MessageBox::Show( "Game Over! Your "
                                                "typing skill level is intermediate. "
                                                "Please play again!" );
                                        intCount = 0;
                                        intWrong = 0;
                                        return;
                                }
                                //inform play he/she is advanced
                                if( intCount < 5 )
                                {
                                        MessageBox::Show( "Game Over! Your "
                                                "typing skill level is advanced. "
                                                "Please play again!" );
                                        intCount = 0;
                                        intWrong = 0;
                                        return;
                                }
                        }
private: System::Void btnExit_Click(System::Object^                sender,
                        System::EventArgs^                e) {
                                this->Close();
                }


                }
private: System::Void tmrControl_Tick(System::Object^  sender, System::EventArgs^  e) {
                        //update timer value
                        intTimer += 1;
                        int16 intTimeRemain = 15 - intTimer;
                        stsLabel->Text = "Seconds remaining: ";
                        stsLabel->Text = String::Concat( stsLabel,
                                intTimeRemain.ToString() );
                        //handle running out of time
                        if( intTimer == 15 )
                        {
                                intWrong += 1;
                                tmrControl->Enabled = false;
                                stsLabel->Text = "";
                                MessageBox::Show( String::Concat( "Strike ",
                                        intWrong.ToString(), " - Time is up! Please",
                                        " try again." ) );
                                //reset game
                                txtEntry->Text = "";
                                txtDisplay->Text = "";
                                btnDone->Enabled = false;
                                btnGo->Enabled = true;
                                txtEntry->ReadOnly = true;
                                intTimer = 0;
                                btnGo->Focus;
                                //handle 3 strikes
                                if( intWrong == 3 )
                        {
                                //inform play he/she is a begginer
                                if( intCount < 2 )
                                {
                                        MessageBox::Show( "Game Over! Your "
                                                "typing skill level is Beginner. "
                                                "Please play again!" );
                                        intCount = 0;
                                        intWrong = 0;
                                        return;
                                }
                                //inform play he/she is intermediate
                                if( intCount < 4 )
                                {
                                        MessageBox::Show( "Game Over! Your "
                                                "typing skill level is intermediate. "
                                                "Please play again!" );
                                        intCount = 0;
                                        intWrong = 0;
                                        return;
                                }
                                //inform play he/she is advanced
                                if( intCount < 5 )
                                {
                                        MessageBox::Show( "Game Over! Your "
                                                "typing skill level is advanced. "
                                                "Please play again!" );
                                        intCount = 0;
                                        intWrong = 0;
                                        return;
                                }
                        }
                                //player is an expert!

                                if( intCount >= 5 )
                                {
                                        intCount = 0;
                                        intWrong = 0;
                                        MessageBox::Show( "Game Complete! Your "
                                                "typing skill level is Expert! "
                                                "Please try again!" );

                                }
                }
}

Ancient Dragon Sep 12th, 2007 4:03 pm
Re: error C2059: syntax error : 'namespace'
 
without attempting to compile the code you posted there is probably at least one semicolon missing at the last brace in the header file.

jarv Sep 13th, 2007 5:32 am
Re: error C2059: syntax error : 'namespace'
 
can anyone help?

Ancient Dragon Sep 13th, 2007 6:10 am
Re: error C2059: syntax error : 'namespace'
 
Ok I loaded your code in a new project with VC++ 2005 Express and found that your Form1.h is missing some braces somewhere. You need to start at the top of the file and count the number of open/close brace pairs and insert the missing one(s). Put your cursor on the closing brace at the bottom of the file then press Ctrl + [ keys and the cursor will jump to the matching open brace.

After adding two closing braces at the bottom of the file (probably in the wrong place I might add) the compiler now spits out a lot of other errors in Form1.h. My suggestion is to begain all over again, create a new CLR Windows project and gradually add the code you posted here a little bit at a time, compile to get clean compile, then add some more.

Salem Sep 13th, 2007 6:30 am
Re: error C2059: syntax error : 'namespace'
 
An approach to writing code
Writing 5(*) lines at a time, then pressing "compile" to see how you're doing is a sustainable development strategy.
Dumping 100's of lines on a message board for someone else to fix is not.

The same goes for testing, when you've finished a function, then try running the code to make sure it's doing what you want.

Never code beyond your ability to deal with the consequence of the compiler spitting it straight back at you.

(*) or however many you feel confident about writing without errors.


All times are GMT -4. The time now is 11:11 am.

Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC