2010-02-04 22 views
13

Chỉ cần một câu hỏi quan tâm: Có ai biết tại sao không có khả năng nhận xét khối trong VB .NET? (Trừ khi có thực sự là - nhưng tôi đã chưa bao giờ đi qua nó.)Thiếu nhận xét khối trong VB .NET?

+12

Để ngăn chặn người khác sử dụng Visual Basic? :-p –

+1

Hãy xem: http://connect.microsoft.com/VisualStudio/feedback/details/436415/cho phép nhiều dòng-comment-on-vb-like-in-c-và-sql-cũng-cho phép-trước-breakline-comments-comments-sau –

+1

Tôi chọn nhiều dòng và nhấn nút bình luận/bỏ ghi chú trong IDE, vì vậy nó không quan trọng với tôi :) –

Trả lời

17

Đây là một tác dụng phụ của cú pháp Visual Basic, một dòng mới chấm dứt một câu lệnh. Điều đó làm cho một nhận xét nhiều dòng khá không tương thích với cách cơ bản mà trình biên dịch phân tích ngôn ngữ. Không phải là một vấn đề trong các ngôn ngữ dấu ngoặc nhọn, dòng mới chỉ là không gian màu trắng.

Nó chưa bao giờ là vấn đề thực sự, Visual Basic đã hỗ trợ IDE mạnh mẽ cho thời gian dài rất. Nhận xét nhiều dòng là một tính năng IDE, Chỉnh sửa + Lựa chọn nâng cao + Nhận xét.

+2

+1 IDE xử lý tất cả những thứ này cho tôi, cho phép tôi tập trung vào viết mã tốt mà không bao giờ cần phải được nhận xét ra –

+3

Với CTRL + K + C và CTRL + K + U bạn don không cần ý kiến ​​khối :) – sventevit

+0

Ngoài ra - trong C#, khi bạn viết/*, trình soạn thảo tự động chuyển đổi tất cả các mã, sau đó, để bình luận, do đó, bạn loose phác thảo. Đó là lý do tại sao tôi không sử dụng các chú thích khối trong C#. – sventevit

2

Như có thể đọc trong “Comments in Code“ không có bất kỳ cách nào khác:

Nếu nhận xét của bạn đòi hỏi nhiều hơn một dòng, sử dụng biểu tượng nhận xét trên mỗi dòng, như ví dụ sau minh họa.

' This comment is too long to fit on a single line, so we break 
' it into two lines. Some comments might need three or more lines. 

Tương tự như vậy, sự giúp đỡ trên REM statement trạng thái:

Lưu ý:
Bạn không thể tiếp tục một tuyên bố REM bằng cách sử dụng một chuỗi tiếp tục dòng (_). Khi một bình luận bắt đầu, trình biên dịch không kiểm tra các ký tự cho ý nghĩa đặc biệt. Đối với nhận xét nhiều dòng, hãy sử dụng câu lệnh REM hoặc biểu tượng nhận xét khác (') trên mỗi dòng.

0

Tùy thuộc vào số lượng dòng được bỏ qua, người dùng có thể sử dụng chỉ thị của trình biên dịch thay thế. Nó có thể không tương đương về mặt kỹ thuật với các chú thích (ví dụ như bạn không nhận được màu cú pháp của các chú thích), nhưng nó hoàn thành công việc mà không cần bình luận nhiều dòng riêng lẻ. Vì vậy, bạn chỉ cần thêm 3 dòng mã.

#Const COMMENT = "C" 
'basically a false statement 
#If COMMENT = "Y" Then 
    'code to be commented goes between #If and #End If 
    MsgBox('Commenting failed!') 
#End If 

này là giả định mục đích là để bỏ qua các khối mã thay vì thêm tài liệu (những gì "ý kiến" đang thực sự sử dụng cho, nhưng tôi cũng không ngại sử dụng các chỉ thị biên dịch cho điều đó).

Tuy nhiên, nỗ lực này làm cho phương pháp này trở nên bất tiện khi chỉ có khoảng 10 dòng để nhận xét.

tham khảo: http://msdn.microsoft.com/en-us/library/tx6yas69.aspx

8

chỉ thị Hoàn toàn Lợi dụng trình biên dịch ở đây ... nhưng:

#If False Then 
Comments 
go 
here 
#End If 

Bạn không nhận được những lợi ích của mã màu sắc thích hợp (nó không hiển thị màu xanh lá cây khi sử dụng lược đồ màu mặc định) và hệ thống tiếp tục dòng ẩn sẽ tự động thụt lề các dòng trong một đoạn bắt đầu từ dòng thứ hai. Nhưng trình biên dịch sẽ bỏ qua văn bản.

+0

Hoàn hảo! Cần phải tạm thời bình luận ra một số dòng mã trong một kịch bản triển khai SSRS trong Notepad ++ và điều này làm việc tuyệt vời. –

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