Основная ошибка в том, что вы путаете список фактических параметров со списком формальных параметров. Формальные параметры содержат информацию о типе параметра, тогда как фактический параметр является переменной или выражением.
Например, функция MultiplyBy2 () имеет формальный параметр типа double , но может вызываться с помощью выражения или переменной.
class Main {
static double MultiplyBy2(double x)
{
return 2 * x;
}
static void Main(String[] args)
{
int x = 5;
Console.WriteLine( MultiplyBy2( 6 ) ); // 12
Console.WriteLine( MultiplyBy2( x ) ); // 10
}
}
Кроме того, кажется, вы заинтересованы в том, чтобы вернуть имя и возраст, а не передавать их. Я предполагаю, что вы получите имя и возраст от SayHi () и на самом деле поздороваетесь с Main () .
Нетрудно вернуть более одного значения, поэтому мы можем использовать из , чтобы указать, что эти переменные будут изменены со значением, установленным в функции SayHi () .
Это также означает, что SayHi () не подходит для этой функции. Давайте перейдем к AskPersonalData () .
class Program
{
static void Main(string[] args)
{
string name;
int age;
AskPersonalData( out name, out age );
Console.WriteLine( "Hello User" + name + "you are" + age + " Years old" );
}
static void AskPersonalData(out string name, out int age)
{
Console.Write( "Enter Your Name: " );
name = Console.ReadLine();
Console.Write( "Enter Your Age: " );
age = Convert.ToInt32( Console.ReadLine() );
}
}
Вы можете глубже изучить передачу параметра в MSDN .
Надеюсь, это поможет.
Я знаю, что вы можете использовать LSParseNumber:
<cfset string = "1,427.75">
<cfset number = LSParseNumber(string) * 100>