C++ cli C++;点网错误C 3265:无法声明托管'';在非托管';wmain::$unnnamedClass$0x43505982$383$ int-tmain(int-argc,_-TCHAR*argv[] { 类型定义结构 { 字符串^name_1; 字符串^Max_1; 字符串^Min_1; }电源线名称; 电源线名称*电源列表[5]; StreamReader ^sr=File::OpenText(“testcpp\\test\\powerline.txt”); 阵列^电源线; 数组^d_线; 字符串^eachString; 字符串^eachString_2; 字符串^eachString_3; int i=0; 尝试 { 字符串^s=“”; 而(s=sr->ReadLine()) { //控制台::写线; 电源线=s->拆分(':'); 控制台::写线; 对于每个(电源线中的每个管柱) { 控制台::WriteLine(每个字符串); } d_线=电源线[1]->拆分(“|”); 电源列表[i]->name_1=d_线[0]->ToCharArray(); 电源列表[i]->Max_1=d_线[1]; 电源列表[i]->Min_1=d_线[2]; i++; } 控制台::写线; } 最后 { if(sr) 删除(IDisposable^)(sr); } }

C++ cli C++;点网错误C 3265:无法声明托管'';在非托管';wmain::$unnnamedClass$0x43505982$383$ int-tmain(int-argc,_-TCHAR*argv[] { 类型定义结构 { 字符串^name_1; 字符串^Max_1; 字符串^Min_1; }电源线名称; 电源线名称*电源列表[5]; StreamReader ^sr=File::OpenText(“testcpp\\test\\powerline.txt”); 阵列^电源线; 数组^d_线; 字符串^eachString; 字符串^eachString_2; 字符串^eachString_3; int i=0; 尝试 { 字符串^s=“”; 而(s=sr->ReadLine()) { //控制台::写线; 电源线=s->拆分(':'); 控制台::写线; 对于每个(电源线中的每个管柱) { 控制台::WriteLine(每个字符串); } d_线=电源线[1]->拆分(“|”); 电源列表[i]->name_1=d_线[0]->ToCharArray(); 电源列表[i]->Max_1=d_线[1]; 电源列表[i]->Min_1=d_线[2]; i++; } 控制台::写线; } 最后 { if(sr) 删除(IDisposable^)(sr); } },c++-cli,C++ Cli,错误C 3265:无法在非托管的“wmain::$unnnamedClass$0x43505982$383”中声明托管的“name_1”$ 错误C 3265:无法在非托管的“wmain::$unnnamedClass$0x43505982$383”中声明托管的“Max_1”$ 错误C 3265:无法在非托管“wmain::$unnnamedClass$0x43505982$383中声明托管“Min_1”$ 我能做些什么???您有一个本机结构(power\u line\u name)和托管成员(n

错误C 3265:无法在非托管的“wmain::$unnnamedClass$0x43505982$383”中声明托管的“name_1”$

错误C 3265:无法在非托管的“wmain::$unnnamedClass$0x43505982$383”中声明托管的“Max_1”$

错误C 3265:无法在非托管“wmain::$unnnamedClass$0x43505982$383中声明托管“Min_1”$ 我能做些什么???

您有一个本机结构(power\u line\u name)和托管成员(name\u 1等)。为此,本机结构必须使用gcroot或auto_gcroot模板

另一种不需要gcroot的方法是让结构像这样管理:

    power_list[i]->name_1=d_line[0]; // ->ToCharArray();
    power_list[i]->Max_1=d_line[1];
    power_list[i]->Min_1=d_line[2];
ref结构电源线名称
{
字符串^name_1;
字符串^Max_1;
字符串^Min_1;
};
int _tmain(int argc,_TCHAR*argv[]
{
自动电源列表=gcnew阵列(5);

编译器似乎已崩溃。严重性代码错误C1001编译器中出现内部错误。
    #include <msclr\auto_gcroot.h>
    typedef struct
{
    msclr::auto_gcroot<String^> name_1;
    msclr::auto_gcroot<String^> Max_1;
    msclr::auto_gcroot<String^> Min_1;
}power_line_name;
    power_list[i]->name_1=d_line[0]; // ->ToCharArray();
    power_list[i]->Max_1=d_line[1];
    power_list[i]->Min_1=d_line[2];
ref struct power_line_name
{
    String^ name_1;
    String^ Max_1;
    String^ Min_1;
};

int _tmain(int argc, _TCHAR* argv[])
{
    auto power_list = gcnew array<power_line_name^>(5);