Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

C#ÖÐrefºÍoutµÄÇø±ð

¿´Á˺ܶà.°´ÕÕ ×Ô¼ºÃ÷°×½âÊÍһϠ.NET RefºÍOut¹Ø¼ü×Ö ¶ÔÓÚÖµÀàÐÍ¡£ Èç¹û²»Ê¹ÓÃref /outÔò´«µÝµÄÖ»ÊÇÕâЩֵµÄCOPY, ʹÓÃÁËRefºÍOutµÄЧ¹û¾Í¼¸ºõºÍCÖÐʹÓÃÁËÖ¸Õë±äÁ¿Ò»Ñù¡£(´«µÝµÄ¾ÍÊÇÔ­Öµ),ËüÄܹ»ÈÃÄãÖ±½Ó¶ÔÔ­Êý½øÐвÙ×÷£¬¶ø²»ÊǶÔÄǸöÔ­ÊýµÄCopy½øÐвÙ×÷ ¶ÔÓÚÒýÓÃÀàÐÍ: Èç¹û²»Ê¹ÓÃref /out,ÒòΪ´«µÝµÄÊÇÒýÓÃÀàÐ͵ĵØÖ·Öµ,Ôò½«´«µÝÒýÓÃÀàÐ͵ĵØÖ·ÖµµÄÒ»¸öCOPY(--Õë¶ÔµØÖ·ÖµµÄ½Ç¶È»¹ÊÇÖµÀàÐÍ´«µÝ),ʵ¼ÊÉϾÍÊÇпªÒ»¸ö²»Í¬µÄÄÚ´æ±äÁ¿À´´æ´¢Õâ¸öµØÖ·ÖµµÄ¿½±´ ¶øÊ¹ÓÃref /out,´«µÝµÄ»¹ÊÇÒýÓÃÀàÐ͵ĵØÖ·Öµ,µ«ÊÇ´«µÝµÄ¾Í²»ÊÇÒ»¸öбäÁ¿À´´æ¿½±´,¶øÊǾÍÊÇ´«Ô­À´µÄÄǸöÓ¦ÓÃÀàÐ͵ĵØÖ·Öµ /////////////////×¢ÒâlistµÄ´¦Àí////////²»ÓùØÐÄ,Òì²½,´úÀíίÍÐÕâЩ;¿ÉÒÔºÍʹÓÃͬ²½·½·¨Ò»ÑùÀí½â£»Ö»ÊÇÕýºÃÓöµ½ÁËÕâ¸öÀý////////////////////////////////////////////////×ÓËùÒÔÄÃÀ´Óã» public delegate string DelegateWithParameters(string param1, int param2, ArrayList list); private void CallFooWithParameters() { // create the paramets to pass to the function string strParam1 = "Param1"; int intValue = 100; ArrayList list = new ArrayList(); list.Add("Item1"); // create the delegate DelegateWithParameters delFoo = new DelegateWithParameters(FooWithParameters); // call FooWithParameters(string param1,int param2, ArrayList list) // ʵ¼ÊÉÏlistµÄÒýÓõØÖ·×÷ΪֵÀàÐÍ´«µÝ,½øÈë·½·¨Ê±,ÓÃÒ»¸öÐÂÄÚ´æ±äÁ¿´æ´¢Õâ¸öÒýÓõĵØÖ· //ËùÒÔÔÚº¯ÊýÄÚ²¿¶à¸ÃÐÂÄÚ´æ±äÁ¿µØÖ·ÐÞ¸Ä.Ö»ÊÇÈøÃÐÂÄÚ´æ±äÁ¿Ö¸ÏòÁËÁíÍâÒ»¸ölist IAsyncResult tag = delFoo.BeginInvoke(strParam1, intValue, list, null, null); // normally control is returned right away, // so you can do other work here... // calling end invoke to get the return value string strResult = delFoo.EndInvoke(tag); // write down the parameters: Trace.WriteLine("param1: " + strParam1); Trace.WriteLine("param2: " + intValue); Trace.WriteLine("ArrayList count: " + list.Count); } private string FooWithParameters(string param1, int param2, ArrayList list) { // lets modify the data! param1 = "Modify Value for param1"; param2 = 200; list = new ArrayList(); //listÊÇ´«½øÀ´µÄÄǸöµØÖ·µÄ¿½±´;ËùÒÔÖ»ÊǰÑÕâ¸öеĿ½±´Ö¸ÏòÁËÒ»¸öеÄnew ArralyList()¶ÔÏó //Ë


Ïà¹ØÎĵµ£º

ÔÚAsp.net(C#) ÖÐʹÓà ReportViewer

a. ReportViewer¹ØÁªReport1.rdlcµÄ¼òµ¥³ÊÏÖ
b. ¶Ô´øÓб¨±í²ÎÊýµÄReport1.rdlcµÄ³ÊÏÖ
c.
ÀûÓóÌʽÉú³ÉµÄDataSet Ìî³ä±¨±í
d. µ÷Óô洢¹ý³Ì Éú³ÉDataSet Ìî³ä±¨±í
==========
¼òµ¥µÄ³ÊÏÖ
==========
1. ´ò¿ªVS2005£¬Îļþ->н¨->ÍøÕ¾ Ñ¡ÔñÓïÑÔÖÖÀࣨC#£©
2. Ôڸýâ¾ö·½°¸ÏÂ
Éè¼ÆÆäÒѾ­Éú³ÉµÄDefault.aspx ......

C#Öм̳ÐʵÏÖ¸¸Àà·½·¨¡¢ÖØÐ´¡¢ÖØÔØ

¼Ì³ÐÊÇÅÉÉúÀࣨ×ÓÀࣩȥʵÏÖ£¨ÖØÐ´<override>¡¢Öع¹<new>£©»ùÀࣨ¸¸ÀࣩµÄ·½·¨»òÊôÐÔ¡£´Ó¶ø»ñÈ¡ÔÚÅÉÉúÀàÖÐҪʵÏֵŦÄÜ¡£
×ÓÀàµ÷Óø¸À๹Ôì·½·¨£¬ÔÚ¸¸ÀàÖÐÓиöʵÏÖÐÕÃûºÍÄêÁäµÄ¹¹Ôì·½·¨µ«ÊÇÖÐ×ÓÀàҲҪʵÏÖÕâÑùµÄ¹¦ÄÜÕâʱ×ÓÀ಻ÓÃÔÙ´ÎȥдÕâ¸ö¹¦ÄÜֻҪȥµ÷Óø¸ÀàµÄ¹¦Äܼ´¿É¡£
public class Person
 & ......

C#ÀûÓÃwinapi²¶×½Êó±ê²Ù×÷¿Ø¼þµÄ¾ä±ú

public struct POINTAPI
{
   public int x;
   public int y;
}
public static void GetWindowfromPoint(ref int hwnd,ref StringBuilder winText,ref StringBuilder clsName,ref StringBuilder pText)
{
  int parentHandle=0;
  int maxLen=128;
  POINTAPI pnt = new ......

C# ref¹Ø¼ü×ÖµÄÀí½â

ÎÞÒâÖп´µ½ref¹Ø¼ü×Ö£¬Ö»¼ÇµÃÒ»¿ªÊ¼Ñ§Ï°C#µÄʱºò£¬ÓкܶණÎ÷¶¼Ìø¹ýÈ¥ÁË¡£ ½ñÌì¸Õ¿´¼ûÕâ¸ö¹Ø¼ü×ÖµÄʱºò£¬»¹Õæ²»ÖªµÀËüÓÐÊ²Ã´ÌØ±ðµÄµØ·½¡£googleÁËһϣ¬ÕÒµ½Ò»Æª½âÊÍµÄ±È½Ï ºÃµÄÎÄÕ¡£ÈçÏ£º C# ÖеıäÁ¿ C# ÖеÄÊý¾ÝÓÐÁ½ÖÖÀàÐÍ£ºÒýÓÃÀàÐÍ£¨reference types£©ºÍÖµÀàÐÍ£¨value types£©¡£ ¼òµ¥ÀàÐÍ£¨°üÀ¨int, long, doubleµÈ£ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ