这种事?c:='g'; 这也报错???

rick29 2004-11-24 09:13:53
俺慌了,俺的D7怎么这样?
var
c: Char;
...
begin
...
c:='g'; // Error.
end;

编译报错Incompatible types: 'char' and 'Char'
在DELPHI里不是大小写不敏感么?怎么还有'char'和'Char'的说法?
如果我把那些“...”都去掉,则可以,那是一段其它代码,用来调用XML WebService的。如果加上,则无论我是把c:='g'放到程序的任何地方都报这个错.
同样的,c:='g'删掉,则那段调用代码也可以编译过去。
无论我怎么写,c:=char('g')或c:=Char('g'),都不行。

我实在不明白了,请高人指点!
...全文
64 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
rick29 2004-11-24
  • 打赏
  • 举报
回复
谢谢楼上,果然是和Web服务引用生成的类型有冲突了,结帖!
tonylk 2004-11-24
  • 打赏
  • 举报
回复
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
Char = class
end;

TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
s:Char;
begin
s:='a';
end;

end.

这样就会出错。。。。
tonylk 2004-11-24
  • 打赏
  • 举报
回复
你引用的什么类里可能又定义了一个名为char的类,可以试试这样:
var
c:System.char;
begin
..
c:='g';
end;
Dreamnest 2004-11-24
  • 打赏
  • 举报
回复
我可以翻译过去呀,是不是标点符号打错了?
pilicat 2004-11-24
  • 打赏
  • 举报
回复
你把前面的代码也贴出来看看吧,问题不一定出在报错的地方啊!

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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