Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 19 kết quả

Đề tài: Biến tham chiếu trong c#

  1. #1
    Ngày gia nhập
    06 2007
    Nơi ở
    Hà Nội
    Bài viết
    361

    Mặc định Biến tham chiếu trong c#

    Để truyền biến tham chiếu cho phương thức nào đó thì cứ xài ref là xong , khỏi phải bàn . Nhưng mình dùng nó khi gán biến bình thường thì không có được , lỗi ngay
    Code:
        static void Main()
        {
            int j = 40;
            int i =ref j;
        }
    Vậy làm thế nào để dùng bây giờ
    Blog tổng quan kiến thức về viễn thông : http://tongquanvienthong.blogspot.com/

    mSPDict từ điển android hỗ trợ liên kết tra trên các trình đọc sách điện tử và tra sách giấy thông qua camera
    http://www.tinhte.vn/threads/691731/

  2. #2
    Ngày gia nhập
    04 2007
    Bài viết
    128

    Bỏ ref đi là được chứ gì, dùng ref để truyền biến tham chiếu chứ có phải là để lấy địa chỉ tương tự & trong C/C++ đâu.

  3. #3
    Ngày gia nhập
    04 2007
    Bài viết
    128

    Trích dẫn Nguyên bản được gửi bởi tienlbhoc Xem bài viết
    Thử bằng & rồi, không có được .
    Không được la đúng gùi. Tốt nhất cứ để y nguyên
    int i = j;
    Thật chẳng có lý do nào mà lại thêm ref đằng trước!

  4. #4
    Ngày gia nhập
    06 2007
    Nơi ở
    Hà Nội
    Bài viết
    361

    nói thế thì nói làm gì , người ta sinh ra biến tham chiếu tất phải dùng không thì sinh ra biến tham chiếu làm gì .code trên chỉ là ví dụ thôi, chứ em post code đang làm lên thì dài lắm , nhưng chị soda chỉ cần chỉ cách dùng của đoạn trên thôi là code em tự xử được (chắc là không biết nên mới vòng vo vậy )
    Blog tổng quan kiến thức về viễn thông : http://tongquanvienthong.blogspot.com/

    mSPDict từ điển android hỗ trợ liên kết tra trên các trình đọc sách điện tử và tra sách giấy thông qua camera
    http://www.tinhte.vn/threads/691731/

  5. #5
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Trong C#, tất cả những sự phiền hà của con trỏ như ở C++ đã được loại bỏ. Nếu muốn sử dụng toán tử tham chiếu & và toán tử con trỏ * thì phải khai báo là dịch ở chế độ unsafe.
    PHP Code:
    class Reference
    {
        static 
    void Main()
        {
            
    int j 40;
            
    int i =&j;
        }


    Để cho trình biên dịch chịu dịch ở chế độ unsafe thì bạn phải chọn.

    Projects >> MyProject Properties...
    Sau đó chọn tab Buil, tiếp theo checked vào Allow unsafe code.

    Dr thực sự mới học C#, cũng chỉ biết vậy. Có khi còn nhầm lẫn, mọi người cố gắng bổ sung nhé.
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  6. #6
    Ngày gia nhập
    07 2007
    Nơi ở
    Hồ Chí Minh
    Bài viết
    66

    Mặc định Biến tham chiếu trong c#

    chà, ko dc rồi admin, nếu như code trên thì &j phải trả về 1 con trỏ int,
    như thế int i = &j; chắc ko dc;
    Mà phải là int*;\
    CŨng chỉ biết C, hic
    Thèm khát con gái !!
    ......................

  7. #7
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    Code:
    http://msdn2.microsoft.com/en-us/library/chfa2zb8(VS.80).aspx
    ví dụ về unsafe
    PHP Code:
    using System;
    class 
    UnsafeTest
    {
       
    // Unsafe method: takes pointer to int:
       
    unsafe static void SquarePtrParam(intp)
       {
          *
    *= *p;
       }

       
    unsafe static void Main()
       {
          
    int i 5;
          
    // Unsafe method: uses address-of operator (&):
          
    SquarePtrParam(&i);
          
    Console.WriteLine(i);
       }

    trích từ MSDN :
    Code:
    http://msdn2.microsoft.com/en-us/library/chfa2zb8(VS.80).aspx
    None!

  8. #8
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Được chứ?

    &j là địa chỉ có biến j. Mà địa chỉ là một số kiểu nguyên (long). Hoàn toàn được, tất nhiên là không tốt bằng khai báo long i.
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  9. #9
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    Khai báo về con trỏ trong C# chú ý nhé :
    Code:
    datatype* variableName;
    
    int* p1, p2, p3;   // Ok
    int *p1, *p2, *p3;   // Invalid in C#
    một số kiểu khai báo hợp lệ
    Code:
    int* p;
    int** p;
    int*[] p;
    char* p;
    void* p;
    Trích và tham khảo:
    PHP Code:
    http://msdn2.microsoft.com/en-us/library/y31yhkeb(VS.80).aspx 
    None!

  10. #10
    Ngày gia nhập
    07 2007
    Nơi ở
    Hồ Chí Minh
    Bài viết
    66

    Trích dẫn Nguyên bản được gửi bởi Dreaminess Xem bài viết
    Được chứ?

    &j là địa chỉ có biến j. Mà địa chỉ là một số kiểu nguyên (long). Hoàn toàn được, tất nhiên là không tốt bằng long i.
    Nhưng như thế thì có đúng ko, khi
    int i;
    ở đây i là kiểu trị.
    int i = &j;
    Thế này thì i sẽ mang giá trị là địa chỉ của j, chứ ko phải là nội dung của j;
    Mặc dù biên dịch ko lỗi.
    Ko biết nó hoàn toàn đúng ko, vì đây là C#.
    Thèm khát con gái !!
    ......................

Các đề tài tương tự

  1. Phân biệt truyền biến bằng tham trị, tham chiếu, địa chỉ. Xin cảm ơn.
    Gửi bởi thaoha trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 18-02-2012, 02:03 PM
  2. Thuộc tính khóa ngoài( tham chiếu) biến mất khi biến đổi từ file XML sang DataTable
    Gửi bởi itmanhieu trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 17-08-2011, 08:02 PM
  3. Dùng biến tham chiếu trong khai báo hàm ở ngôn ngữ C#?
    Gửi bởi egr trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 19-05-2010, 11:09 PM
  4. Tham chiếu biến trong lớp thừa kế
    Gửi bởi trafficwarevn trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 09-12-2008, 07:35 AM
  5. hỏi về ref trong tham chiếu biến
    Gửi bởi xadieu trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 2
    Bài viết cuối: 16-04-2008, 10:52 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn