社区
语言基础/算法/系统设计
帖子详情
Delphi里面有指针的概念吗?
alphagx
2003-07-04 06:41:16
玩了多年的VC,现在发现做界面用Delph真是太爽了。
现在我实现用Delphi来调用我的VC写的DLL
里面遇到一些问题,希望版里的高手指点一下。
Delphi里面有指针的概念吗??
如何申请一段缓冲区呢??
我在VC里面的结构定义,在Delphi里面能不用??
(个人觉得好象得重写一遍,BCB就不需要了)
...全文
111
17
打赏
收藏
Delphi里面有指针的概念吗?
玩了多年的VC,现在发现做界面用Delph真是太爽了。 现在我实现用Delphi来调用我的VC写的DLL 里面遇到一些问题,希望版里的高手指点一下。 Delphi里面有指针的概念吗?? 如何申请一段缓冲区呢?? 我在VC里面的结构定义,在Delphi里面能不用?? (个人觉得好象得重写一遍,BCB就不需要了)
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
alphagx
2003-07-06
打赏
举报
回复
Delphi论坛的人真是太热心了,呵呵。
我这个帐号3年前注册的了,我不知道alphax是谁,在CSDN上我没有马假。
帮忙关于一下这个帖子。
http://expert.csdn.net/Expert/TopicView1.asp?id=1995683
以前一直用的VC,最近刚转用DELPHI,有许多问题,还请大家多多指教。
MSN:gx_cn@hotmail.com
myling
2003-07-05
打赏
举报
回复
Object Pascal素有“先声明,后使用”的基本规则,这使得程序结构规范、严谨。但这一规则在某些特殊情况下则不适用。例如,
type
PRec = ^TRec;
TRec = record
ID: Integer;
Next: PRec;
end;
var
A: array of TRec;
这是循环链表典型的声明范例。可以看出,在声明PRec类型时用到了TRec类型,而此时TRec类型尚未被声明。事实上,编译器对上面的声明是认可的,而且只能如此声明。调换PRec和TRec的声明顺序,编译器将不认可。在PRec和TRec的声明之间加入其他类型声明,只要不增加保留字type,编译器也是认可的。简单地说,类似于这样的循环,相互依赖的声明必需位于同一组类型声明中(即由同一个保留字type引出),而且只能是类型指针在声明之前可以被使用,并且必需在本组类型声明结束之前其进行声明。例如,下面的声明也是合法的:
type
PRec = ^TRec;
PA = array of PRec;
TIntA = array of Integer;
TRec = record
ID: Integer;
Next: PRec;
end;
当然,对于非循环的类型指针声明,也可以采用类似声明。下面的两组声明是等价的:
{ 使用时尚未声明 }
type
PRec = ^TRec;
TRec = record
ID: Integer;
Name: string[10];
end;
{ 使用前已经声明 }
type
TRec = record
ID: Integer;
Name: string[10];
end;
PRec = ^TRec;
显然,后面一组声明更符合规范。
ttch
2003-07-05
打赏
举报
回复
'point' and '^type'两中申请指针方式
第一种需要转换类型
但无类型限制
第二种有类型限制 无须类型转换
李_军
2003-07-05
打赏
举报
回复
当然有
比如说
var
a: PChar;
begin
try
getMem(a,255)
finally
FreeMem(a,255);
end;
end;
OO_is_just_P
2003-07-05
打赏
举报
回复
^
FrameSniper
2003-07-05
打赏
举报
回复
Alphagx?????????????????????????????????
你和Alphax是什么关系,兄弟关系??????
Eastunfail
2003-07-05
打赏
举报
回复
给你几个对照的:
C/C++/C# Unmanaged
1. typedef int* PInt
2. int a;
3. PInt b;
4. a=5;
5. *b=5;
6. b=&a;
Pascal/Object Pascal
type
1. PInt=^Integer;
var
2. a:integer;
3. b:PInt;
begin
4. a:=5;
5. b^:=5; //^用来解引用,和*一样,不过声明类型的时候放在原始类型前面,变量解引用放在变量后面,这个和C/C++不太一样
6. b:=@a; //@用来取指针,相当于C/C++中的 & ,但是在函数声明里面,定义一个引用类型不能够用@,而是添加 var 修饰附.函数指针也是用@来得到.
hkbarton
2003-07-04
打赏
举报
回复
^就可以声明指针类型
2353939
2003-07-04
打赏
举报
回复
mark
xiehua822
2003-07-04
打赏
举报
回复
pointer^:=3;
kataboy
2003-07-04
打赏
举报
回复
有啊。我有一份C与Passcal的资料。要的话发消息给我。
alphagx
2003-07-04
打赏
举报
回复
我在做一个小工具,用vc写界面觉得太麻烦了,
所以决定以后写界面用delphi了,
其实是用getmem函数。
lEFTmOON
2003-07-04
打赏
举报
回复
有,可以用Pointer
当然,也可以用var来实现指针的功能。
qxj
2003-07-04
打赏
举报
回复
当然有了,你怎么也用了?
nzh517
2003-07-04
打赏
举报
回复
Delphi里有指针,和C的用法差不多,很好用,不过Delphi的数据类型相当严格,注意分配内存与强制转化,
VC里的结构体在Delphi里也能用,不过得重新定义,不然你的Delphi程序不认
sixgj
2003-07-04
打赏
举报
回复
应该有吧。
Means_pan
2003-07-04
打赏
举报
回复
当然有啊!
Delphi
6中类的使用
delphi
中对类的简易Demo,类的定义、类的创建,类的特性测试,类的对象接口的定义使用;
delphi
多线程调用dll
delphi
多线程调用dll
delphi
多线程调用dll 有点复杂
CSDN
里面
关于
Delphi
编程文档
csdn 关于
delphi
编程文档的整理 值得一看
Delphi
下真正隐藏进程的代码
Delphi
下真正隐藏进程的代码
delphi
新建快捷方式.rar
1.学生毕业设计专用 2.保证无毒 3.个人作品,自己要是想用的话,可是改用 4.本人不受法律责任,由改动代码人负责!
语言基础/算法/系统设计
16,747
社区成员
33,239
社区内容
发帖
与我相关
我的任务
语言基础/算法/系统设计
Delphi 语言基础/算法/系统设计
复制链接
扫一扫
分享
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章