C#函數(shù)out多個返回值問題
C#函數(shù)返回多個參數(shù)數(shù)值
通過out/Ref實現(xiàn),聲明函數(shù)時用out指定返回變量。
- 寫了一個DEMO,輸入字符“測試字符”和數(shù)字6,返回“測試字符+新加字符”和666。
- 寫了一個窗體和button觸發(fā)函數(shù),整理代碼如下,供大家參考。
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btn_Test_Click(object sender, EventArgs e) { //提前聲明返回參數(shù)變量 string str; int num; getValue("測試字符", 6,out str,out num);//調(diào)用函數(shù)返回數(shù)值 //輸出查看 Console.WriteLine("str:" + str + ";類型:" + str.GetType().ToString()); Console.WriteLine("num:" + num + ";類型:" + num.GetType().ToString()); } //定義測試函數(shù) public void getValue(string in_str, int in_int, out string out_str, out int out_int) { out_str = in_str + "+新加字符"; out_int = in_int + 660;//函數(shù)結(jié)束一定給所有out對應(yīng)變量賦值 } } }
輸出效果如下:
C#調(diào)用一個函數(shù)通過out返回多個變量值/數(shù)據(jù)
我們知道一個函數(shù)使用過Return來返回值的話只能返回一個值,在c#中,自定義一個函數(shù)時,用out 來out多個值出來,調(diào)用的時候就可以返回多個值
舉例
現(xiàn)在自己寫一個函數(shù)calculate(),需要返回加法和減法的計算結(jié)果,在主函數(shù)中輸出
namespace ConsoleApplication2 { class Program { static void Main(string[] args) { int c , d ; calculate(2, 3, out c,out d); Console.WriteLine(c); Console.WriteLine(d); Console.ReadLine(); } private static void calculate(int a, int b, out int c, out int d) { c = a + b; d = a - b; } } }
private
寫習(xí)慣了static
不想在主函數(shù)中再對calculate實例化void
不要返回值 (第一次寫的時候掉了void 別掉)
也可以加返回值,比如,取返回值是bool型。比較a,b的值,如果a>b,輸出c,如果a<=b,則c不輸出,輸出“nothing”
static void Main(string[] args) { int c; if (calculate(2, 3, out c)) Console.WriteLine("c = "+c); else Console.WriteLine("Nothing"); Console.ReadLine(); } private static bool calculate(int a, int b, out int c) { bool t; if (a > b) t = true; else t = false; c = a - b; return t; }
輸出結(jié)果:
如果改變輸入 使得a= 3,b =2,則輸出結(jié)果:
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#應(yīng)用XML作為數(shù)據(jù)庫的快速開發(fā)框架實現(xiàn)方法
這篇文章主要介紹了C#應(yīng)用XML作為數(shù)據(jù)庫的快速開發(fā)框架實現(xiàn)方法,詳細介紹了將XML作為數(shù)據(jù)庫的C#桌面應(yīng)用開發(fā)技巧,具有一定的參考借鑒價值,需要的朋友可以參考下2014-12-12英雄聯(lián)盟輔助lol掛機不被踢的方法(lol掛機腳本)
lol掛機不會被踢,調(diào)用API設(shè)置鼠標位置并模擬鼠標右鍵讓人物走動2013-12-12C#如何優(yōu)雅的對WinForm窗體應(yīng)用程序進行權(quán)限控制
經(jīng)常會出現(xiàn)winfrom頁面需要加載權(quán)限樹,下面這篇文章主要給大家介紹了關(guān)于C#如何優(yōu)雅的對WinForm窗體應(yīng)用程序進行權(quán)限控制的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-11-11c# StringBuilder.Replace 方法 (Char, Char, Int32, Int32)
c# StringBuilder.Replace 方法 (Char, Char, Int32, Int32)...2007-08-08