首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

关于Dll string的有关问题

2012-03-14 
关于Dll string的问题好多文章说dll里避免用string类型 请问一下 是export的方法的参数不用string类型还是

关于Dll string的问题
好多文章说dll里避免用string类型 请问一下 是export的方法的参数不用string类型还是方法体里都不能用string类型?没有export的方法能不能使用string呢?
string确实方便很多,如果想用string类型,该怎么来解决?
pchar 和 string的使用区别能讲讲吗 
谢谢

[解决办法]
导出函数最好不要用string,内部函数可以用,但是建议少用,毕竟这不是dll标准类型,如果一定要用,那需要在dll和调用者的uses第一位置引用sharmem,但是这样只能在delphi里面用,如果写dll可以让其他语言用最好不要用string
[解决办法]
只是建议在导出函数参数或返回部分不用String,在程序中用一般是没问题的
如果在导出函数参数或返回中用String不是不可以,正如楼上所说,只要uses ShareMem单元就可以了
但这种DLL只能用于delphi或c++ builder,且要与BORLNDMM.DLL一起布

[解决办法]
可以用函数返回值时带回需要的值的办法。

比如

Function Abc(var Str: String):Integer;

或者直接用 procedure 来返回需要的值
[解决办法]
内部使用不需要
[解决办法]
完全没问题。。建议使用 FastMM4.
[解决办法]
导出函数中都使用PCHar来代替就可以了
[解决办法]

探讨
谢谢楼上每一位
如果内部函数使用的string类型的话 是否还需要引入ShareMem单元?

热点排行