Inno Setup的:如何定义常量数组? [英] Inno Setup: How to define an array in const?

查看:1606
本文介绍了Inno Setup的:如何定义常量数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一些问题定义字符串数组常量下的创新安装了code节,我有以下几点:

I'm having some problems defining an array of strings in const under the code section in Inno Setup, I have the following:

[Code]

const
  listvar: array [0..4] of string =
     ('one', 'two', 'three', 'four', 'five');

它说我需要一个 = 其中是,但我不能将其定义为数组。

It's saying I need an = where the : is, but then I can't define it as an array.

推荐答案

我前一阵做了一个小工具的功能。它不会让你一个恒定分配一个数组,但它可以在一个单行的变量做的伎俩。希望这帮助。

I made a little utility function a little while ago. It won't allow you to assign an array on a constant but it could do the trick for a variable in a one liner. Hoping this help.

您可以用这种方式:

listvar := Split('one,two,three,four,five', ',');

    

// ============================================================================
// Split()
// ----------------------------------------------------------------------------
// Split a string into an array using passed delimeter.
// ============================================================================
Function Split(Expression: String; Separator: String): TArrayOfString;
Var
    i: Integer;
    tmpArray : TArrayOfString;
    curString : String;

Begin
    i := 0;
    curString := Expression;

    Repeat
        SetArrayLength(tmpArray, i+1);
        If Pos(Separator,curString) > 0 Then    Begin
            tmpArray[i] := Copy(curString, 1, Pos(Separator, curString)-1);
            curString := Copy(curString, Pos(Separator,curString) + Length(Separator), Length(curString));
            i := i + 1;
        End Else Begin
             tmpArray[i] := curString;
             curString := '';
        End;
    Until Length(curString)=0;

    Result:= tmpArray;
End;

这篇关于Inno Setup的:如何定义常量数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆