• 0

Help with C++ hello world


Question

I'm just starting to learn this and already having problem creating one of the easiest program. It's the hello world program, Here's what's on without anything edited and the program runs fine.

#pragma once</P> <P>
namespace NeosHelloWorld {</P> <P> using namespace System;
 using namespace System::ComponentModel;
 using namespace System::Collections;
 using namespace System::Windows::Forms;
 using namespace System::Data;
 using namespace System::Drawing;</P> <P> /// <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
   //
  }</P> <P> protected:
  /// <summary>
  /// Clean up any resources being used.
  /// </summary>
  ~Form1()
  {
   if (components)
   {
	delete components;
   }
  }
 private: System::Windows::Forms::Button^  button1;
 protected: 
 private: System::Windows::Forms::Label^  label1;</P> <P> private:
  /// <summary>
  /// Required designer variable.
  /// </summary>
  System::ComponentModel::Container ^components;</P> <P>#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->button1 = (gcnew System::Windows::Forms::Button());
   this->label1 = (gcnew System::Windows::Forms::Label());
   this->SuspendLayout();
   // 
   // button1
   // 
   this->button1->Location = System::Drawing::Point(197, 229);
   this->button1->Name = L"button1";
   this->button1->Size = System::Drawing::Size(75, 23);
   this->button1->TabIndex = 0;
   this->button1->Text = L"button1";
   this->button1->UseVisualStyleBackColor = true;
   this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
   // 
   // label1
   // 
   this->label1->AutoSize = true;
   this->label1->Location = System::Drawing::Point(13, 13);
   this->label1->Name = L"label1";
   this->label1->Size = System::Drawing::Size(35, 13);
   this->label1->TabIndex = 1;
   this->label1->Text = L"label1";
   // 
   // Form1
   // 
   this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
   this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
   this->ClientSize = System::Drawing::Size(284, 264);
   this->Controls->Add(this->label1);
   this->Controls->Add(this->button1);
   this->Name = L"Form1";
   this->Text = L"Form1";
   this->ResumeLayout(false);
   this->PerformLayout();</P> <P>  }
#pragma endregion
 private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
	}
 };
}</P> <P>

But if I change the last part to open a box saying hello world it runs an error.

#pragma endregion
 private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
	 Messagebox.Show("Hello World!");
	}
 };

1>c:\users\neo003\documents\visual studio 2008\projects\neo's helloworld\neo's helloworld\Form1.h(99) : error C2065: 'Messagebox' : undeclared identifier

1>c:\users\neo003\documents\visual studio 2008\projects\neo's helloworld\neo's helloworld\Form1.h(99) : error C2228: left of '.Show' must have class/struct/union

1> type is ''unknown-type''

Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0
1>c:\users\neo003\documents\visual studio 2008\projects\neo's helloworld\neo's helloworld\Form1.h(99) : error C2143: syntax error : missing ';' before '.'

1>c:\users\neo003\documents\visual studio 2008\projects\neo's helloworld\neo's helloworld\Form1.h(99) : error C2143: syntax error : missing ';' before '.'

I tried that too. Also it's Visual Studio 2008.

Link to comment
Share on other sites

  • 0
Yeah sorry it's c++ app.

Ok. Just making sure you didn't accidentally create the wrong project type.

Try MessageBox::Show("Whatever");

Link to comment
Share on other sites

  • 0

Well the fix certainly involves changing Messagebox to MessageBox because that's the name of that class. Now if you get a semicolon error you probably have a typo somewhere. Maybe it's MessageBox::Show("Hello World!"); ? I've never written a line in C++/CLI but I know you have to be very careful with using the proper syntax.

edit : sbauer beat me to it. :p

Link to comment
Share on other sites

  • 0

Thanks you guys worked like a charm, :: is what I was missing.

Just for someone like me in future I'm posting a screen shot here.

post-30626-1235073503.jpgpost-30626-1235073511_thumb.jpg

Thanks again, anything else you guys recommend for a new project.

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.