2010-09-22 31 views
6

Tôi có một số câu hỏi xoăn ..
tôi có thể xác định bí danh cho các lớp ở phía trên của tài liệu của tôi, Chẳng hạn nhưBí danh cho tên lớp trong phương pháp

using MyName = Bla.Bla.ClassName

Nhưng tôi có thể xác định một cái gì đó như thế này trong phương pháp?

+0

Bạn có muốn viết cùng một cú pháp bên trong một phương thức không? –

+0

Cú pháp có thể khác. Lý do chính là sử dụng class ClassName từ namespace Bla.Bla ở dạng ngắn (Không có namespace trong phương thức.) – Yuriy

Trả lời

6

Không, bạn không thể. Nếu bạn có nghĩa là bạn muốn xác định bí danh lớp trong một phương thức, điều này là không thể.

Bí danh có thể được xác định duy nhất tại tập tin hoặc namespace cấp:

using MyName = Bla.Bla.ClassName; 
namespace A{ 
... 
} 

hoặc

namespace A{ 
    using MyName = Bla.Bla.ClassName 
... 
} 

Nếu bạn thay vì có nghĩa là bạn muốn xác định một "phương pháp bí danh", điều này cũng là không thể : bí danh chỉ dành cho các loại hoặc không gian tên.

5

Không, using chỉ thị phải thể là bên ngoài bất kỳ tuyên bố, hoặc trong một bản tuyên bố không gian tên:

using Foo; 
namespace Bar 
{ 
    using Baz; 
} 

Bạn không thể làm điều này trong một phương pháp. Tại sao không chỉ làm điều đó cho cả lớp học? Tại sao bạn chỉ cần muốn áp dụng trong một phương pháp cụ thể?

+2

Tôi có một generic trên hai tham số kiểu (hoặc là monome). Phương pháp của tôi có nhiều nhánh trả về khác nhau, mỗi nhánh trả về một "số mới (z)". Các giá trị bên trong của Hoặc là chỉ đọc, vì vậy mà không có một bí danh tôi phải gõ "Hoặc " mỗi khi tôi muốn tham khảo loại này. Các kiểu tham số "x" và "y" phụ thuộc vào phương thức nào tôi đang sử dụng và thường có tên dài; "Hoặc là " chiếm hơn 60 ký tự trong một số trường hợp. Sẽ rất hữu ích khi nói, khi bắt đầu phương pháp, "sử dụng một trong hai = Hoặc là " và sau đó "trả lại mới hoặc (z)" để giảm sự lộn xộn. – barron

Các vấn đề liên quan