社区
Delphi
帖子详情
在COM的接口方法中能不能用字符串数组,能的话在类型库参数中选择什么Type?不能的话有什么方法替代?如:procedure Tusd_ws.aa(aaa: arr
kingbenz
2004-12-08 05:32:22
在COM的接口方法中能不能用字符串数组,能的话在类型库参数中选择什么Type?不能的话有什么方法替代?如:procedure Tusd_ws.aa(aaa: array of WideString);
...全文
74
5
打赏
收藏
在COM的接口方法中能不能用字符串数组,能的话在类型库参数中选择什么Type?不能的话有什么方法替代?如:procedure Tusd_ws.aa(aaa: arr
在COM的接口方法中能不能用字符串数组,能的话在类型库参数中选择什么Type?不能的话有什么方法替代?如:procedure Tusd_ws.aa(aaa: array of WideString);
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gdstyzh01
2004-12-08
打赏
举报
回复
忘了说,在类型库中选择OleVariant类型
gdstyzh01
2004-12-08
打赏
举报
回复
Variant,Variant数组:
Variant是一种可以拥有各种数据类型的变量.只要variant包含数字值就可以在variant上执行算法,或者当一个variant是字符串,另一个variant是个数值时,就有可能把两个variant加起来。使用VarArrayLowBound和VarArrayHighBound来计算variant数组的边界,以及VarArrayDimCount来计算数组的维数.
VarArrayLock和VarArrayUnlock:
Variant一般占据16位字节的内存,使用variant数组会导致性能损失,因此如果需要多次访问variant数组(如当在数组中循环时,可以使用VarArrayLock和VarArrayUnlock加速数组的访问。
VarArrayCreate函数:创建一个变量数组,该方法是比较灵活的。function VarArrayCreate(const Bounds: array of Integer; VarType: TVarType): Variant;其中Bounds给定了数组的上下边界,VarType给定了数组中存储数据的类型。使用该函数时,必须在头文件中加入Variants单元的引用。如果想创建字符串的变量数组,那么使用varOleStr类型。例如:MyIntArray:=VarArrayCreate([1,10],varinteger);如果创建一个二维的数组,则代码如下:MyIntArray:=VarArrayCreate([1,10,1,5],varInteger);这声明了一个数组有10列和5行。
Variant数组的一个最普遍的用途是创建一个variant类型的数组,就像下面这样:MyVarArray:=VarArrayCreate([1,10],varVariant);,这就创建了带有10个variant的数组。然后数组的单个元素就可以装载一个数组:MyVarArray[1]:=VarArrayCreae([1,5],varVariant);
VarArrayOf:可在运行时用于创建一维variant数组,其内部创建variant数组,创建全异的数值数组如下:MyIntArray:=VarArrayOf([‘John’,’Smith’,40,6000.00,’Main Street’]);
moonetra
2004-12-08
打赏
举报
回复
相关函数有:
VarArrayCreate
VarArrayHighBound
VarArrayLowBound
VarArrayDimCount
VarArrayLock
……
moonetra
2004-12-08
打赏
举报
回复
扩展一下 ysai(大海呀,真TM的大) 的意思就是
procedure SomeProc(var AOle: OleVariant);
begin
{创建一个二维字符串数组,第一维从0..100,第二维从0..2}
AOle:= VarArrayCreate([0, 100, 0, 2], varOleStr);
……
end;
然后使用该接口后可以这样:
procedure OtherProc;
var
NewOle: OleVariant;
StrAry: array of array of string;
i, j: Integer;
begin
SomeProc(NewOle);
……
for i:= 0 to 100 do
begin
for j:= 0 to 2 do
begin
StrAry[i, j]:= NewOle[i, j];
end;
end;
end;
ysai
2004-12-08
打赏
举报
回复
用OleVariant类型
VarArrayCreate建立数组
字符
数组
和
字符串
(转)
字符串
可以用字符
数组
与
字符串
变量两种方式来存储,效果类似。 一、用字符
数组
来存储
字符串
: char st1[100],st2[100] ; //字符
数组
说明 cin>>st1>>st2; long a,b; 输入:hello, world 则st1={‘h’,’e’,’l’,’l’,’o’,’,’,’\0’} st2={‘w’,’o’,’r’,’l’,’d’,’\0} 字符’\0’为
字符串
结束标
C++
中
字符
数组
的使用
方法
#include #include using namespace std; int main() { string a[2]; for(int i=0;i<2;++i) { cin>>a[i]; cout<
C/C++开发,无可避免的
字符串
(篇一).字节
数组
C/C++开发,无可避免的
字符串
(篇一).字节
数组
。标准
库
实现
字符串
功能主要是通过类似于std::vector容器的std::basic_string类模板实现的,该模板提供了针对各种字符型号的特化类,如using std::string = std::basic_string;博文还阐述了std::basic_string—_view、空终止字节
字符串
、空终止宽
字符串
、空终止多字节
字符串
等功能函数集,并给出演示代码。
c++
字符串
详解
之所以抛弃char*的
字符串
而选用C++标准程序
库
中
的string类,是因为他和前者比较起来,不必担心内存是否足够、
字符串
长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据
类型
。 好了,进入正题……… 首先,为了在我们的程序
中
使用
MFC
中
几个有用的
字符串
操作函数
本文转载连接: https://blog.csdn.net/blogvip/article/details/6836543 MFC
中
有几个
字符串
操作函数很有用,但有的在MSDN
中
都查不到,因为MSDN没有公布。下面我们来看看它们的用法和声明及定义等。 // 功能 : 格式化
字符串
//
参数
: rString - 输出
参数
,格式化后的
字符串
将保存在此
字符串
中
// nIDS - 将进行...
Delphi
5,392
社区成员
262,732
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章