2013-06-13 2 views
0

У меня есть проект в C++/Cli и native mixed. Я создал пользовательский объект, и я хочу создать список этого типа объектов, кажется, не в порядке. Вот код:Как создать Список <Пользовательский объект>

#pragma once 
#include <windows.h> 
#include <stdio.h> 
#include "..\..\Toolkit\Include\TypeHelper_h.h" 
using namespace System; 
using namespace System::Runtime::InteropServices; 
using namespace System::Threading; 
using namespace System::Collections::Generic; 

namespace TypeHelperControl { 

public ref class MyClass 
{ 
public: 
    MyClass(){List<TypeVariable^>^ m_someObj;}; 
    ~MyClass(); 

private: 

}; 


public ref class TypeVariable 
{ 
public: 

    TypeVariable(String^ VariableName,String^ VariableType,String^ VariableValue) 
    { 
     this->m_Name = VariableName; 
     this->m_Type = VariableType; 
     this->m_Value = VariableValue; 
    }; 
    String^ get_Name() 
    { 
     return m_Name; 
    } 
    String^ get_Type() 
    { 
     return m_Type; 
    } 
    String^ get_Value() 
    { 
     return m_Value; 
    } 
private: 
    String^ m_Name; 
    String^ m_Type; 
    String^ m_Value; 
}; 

}; 

Список^m_someObj; Порождает множество ошибок

 
error C2059: syntax error : '>' 
error C2065: 'VariableType' : undeclared identifier 
error C1004: unexpected end-of-file found 

Спасибо

+3

Он должен быть 'List ^' Что касается других ошибок, пожалуйста, напишите ваш код и точное сообщение об ошибке. –

+1

Надеюсь, вы также включили файл TypeVariables.h, как требуется на C++. –

ответ

1

Вы должны определить «TypeVariable» перед первым использованием:

public ref class TypeVariable 
{ 

}; 

public ref class MyClass 
{ 
public: 
    MyClass() 
    { 
     List<TypeVariable^>^ m_someObj; 
    } 
}; 
1
 
error C2065: 'VariableType' : undeclared identifier 

Я считаю, что эта ошибка вызвана тем, что на данный момент в файле, компилятор не видел класс TypeVariable еще. Я рекомендую реорганизовать ваши классы в отдельные заголовочные файлы и #including их соответствующим образом, но быстрое решение & должно было бы вставить объявление public ref class TypeVariable; перед определением MyClass.

 
error C2059: syntax error : '>' 
error C1004: unexpected end-of-file found 

Эти ошибки должны исчезнуть при устранении вышеуказанной ошибки.

Смежные вопросы