输入如下程序就会发生错误,这是为什么,我想了两个星期也没明白,请哪位能给我指点一下。

io567n 2004-11-21 08:35:47
VC++.net的编译错误:
在.NET的起始页中,项目类型选择“Visual C++项目”,模板选择“控制台应用程序(.NET)”。然后输入如下程序就会发生错误,这是为什么,我想了两个星期也没明白,请哪位能给我指点一下。
// 这是使用应用程序向导生成的 VC++
// 应用程序项目的主项目文件。
#include "stdafx.h"
#include<string.h>
#using <mscorlib.dll>
#include <tchar.h>
using namespace System;
_gc class animals
{
public:
int legs;
void SetName(String *Name)
{strName=strName->Copy(Name);};
String *GetName(){return strName;};
String *strName;
};
int _tmain(void)
{
// TODO: 请用您自己的代码替换下面的示例代码。
animals *Cat,*Dog;
Cat=new animals;
Dog=new animals;
Cat->SetName("cat");
Cat->legs=4;
Dog->SetName("dog");
Dog->legs=5;

Console::Write("animal 1");
Console::WriteLine(Cat->GetName());;
Console::WriteLine(Cat->legs);

Console::Write("animal 2");
Console::WriteLine(Dog->GetName());
Console::WriteLine(Dog->legs);
return 0;

}

编译后错误为:
1. error C2143: 语法错误 : 缺少“;”(在“<类头>”的前面)
2. error C2501: “_gc” : 缺少存储类或类型说明符
3. error C3265: 无法声明托管“strName”(在非托管“animals”中)
...全文
82 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
北京的雾霾天 2004-11-22
  • 打赏
  • 举报
回复
改正后程序可以编译通过!
北京的雾霾天 2004-11-22
  • 打赏
  • 举报
回复
_gc class animals
{
public:
int legs;
void SetName(String *Name)
{strName=strName->Copy(Name);};
String *GetName(){return strName;};
String *strName;
};

--------------------->
__gc class animals
{
public:
int legs;
void SetName(String *Name)
{strName=strName->Copy(Name);};
String *GetName(){return strName;};
String *strName;
};

_gc 改为__gc
_gc是不正确的关键字.注意是两个"_"号!
正确的写法是"__gc".
io567n 2004-11-22
  • 打赏
  • 举报
回复
我通过了,太好了,谢谢大侠了。吼吼吼

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧