Delphi常量字符串代码

Delphi常量字符串代码,delphi,Delphi,我明白了 我需要 function TForm1.GetArsHedef(): String; const DosyaAdi: String = 'hello'; 但是升级代码不起作用 谁能帮忙 现在谢谢。你不能做你想做的事。常量在编译时转换为它们的实际值,并且不是动态的。特别是因为这个常量是过程的局部变量,所以只需使用变量即可。“常量”一词本身解释了它的意思是不断地保持相同的值 在任何情况下,都不能在将局部变量或常量的默认值设置为其他变量时定义或声明它们。要读取这些编辑控件的内容,必须在实

我明白了

我需要

function TForm1.GetArsHedef(): String;
const
 DosyaAdi: String = 'hello';
但是升级代码不起作用 谁能帮忙


现在谢谢。你不能做你想做的事。常量在编译时转换为它们的实际值,并且不是动态的。特别是因为这个常量是过程的局部变量,所以只需使用变量即可。“常量”一词本身解释了它的意思是不断地保持相同的值


在任何情况下,都不能在将局部变量或常量的默认值设置为其他变量时定义或声明它们。要读取这些编辑控件的内容,必须在实现中显式编写代码以分配它。

常量必须是常量。必须在编译时知道它们。你需要一个变量

function TForm1.GetArsHedef(): String;
const
 DosyaAdi: String = edit1.text+edit2.text;

您需要使用变量,在函数中甚至不需要声明变量。Delphi会自动在函数中声明变量Result,并使其成为要返回的正确类型

var
  DosyaAdi: String; 
....
DosyaAdi := edit1.text+edit2.text;

尽管如此,您可能希望检查以下内容:。我认为op希望分配给DosyaAdi的值在重新进入函数时保持不变。有些人喜欢可赋值常量。@实际上,从技术上讲,赋值给常量是可能的,但OP希望定义一个直接引用控件的常量。我个人认为,当你可以使用一个变量时,没有任何理由想要指定一个常量。这就像买一辆车只是为了把它当雪撬一样。@Jerrydoge你可能是对的。OP的问题有点简练,所以很难说他们真正需要什么。一个包含变量的表达式不是一个常量表达式,你需要前者来初始化一个常量。10,我在做录音节目,你为什么说你需要它?调用录音节目我不明白这是什么意思,卡恩。录音程序与常量字符串有什么关系?我从来没有写过任何录音程序,但我无法想象这种特殊用途需要从输入字段创建常量字符串。请详细解释。罗布,我正在做电话录音程序。图书馆除外,但收到了一个身份证。这是另一个问题。你展示了一种不可思议的能力,可以生成非序列图。我不知道我是如何选择你要打印的值的​​在编辑器上,但它不允许常量因子edit1.text+edit2.text我想做的是,您是否难以理解常量这个词在上下文中的含义?我回答的关键部分是:必须在编译时知道它们。这对你有意义吗?你读过别人写的东西吗?
function TForm1.GetArsHedef(): String;
begin
  Result := Edit1.Text + Edit2.Text;
end;