У меня есть некоторый опыт работы с C #, но синтаксис C ++ и построение программы создают некоторые проблемы.Я использую Visual C ++ 2008. Во-первых, почему возникает эта ошибка ?:
1> ...... \ Form1.h (104): ошибка C2512: «Cargame :: Car»:нет подходящего конструктора по умолчанию
Во-вторых, почему эта строка невозможна?// System :: Drawing :: Color color;
ошибка C3265: не удается объявить управляемый 'цвет' в неуправляемом 'Car'
Form1.h содержит:
namespace Cargame {
using namespaces bla bla bla
class Car;
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
}
Car* car;
protected:
~Form1()
{
if (components)
{ delete components; }
}
SOME MORE AUTOMATICALLY GENERATED CODE
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
panel1->BackColor = System::Drawing::Color::Green;
car = new Car();
//car->draw();
}
};
}
Содержимое Car.h:
class Car
{
private:
int speed;
//System::Drawing::Color color;
public:
Car();
};
Содержимое Car.cpp
#include "stdafx.h"
#include "Car.h"
#include "Form1.h"
#include <math.h>
//extern TForm1 *Form1;
Car::Car()
{
speed = 0;
}
void Car::draw()
{
//implementation
}