Tôi có một số mã C++ sử dụng rộng rãi !!
. Tôi hơi bối rối vì theo như tôi biết, !!
không phải là nhà khai thác trên chính nó mà là hai !
sau mỗi khác. Điều đó có nghĩa là !!foo
cũng giống như chỉ foo
.Bối rối bằng cách sử dụng toán tử logic không phải (!!)
Có bất kỳ địa điểm và lý do nào khi !!
thực sự có ý nghĩa không? Tôi đã suy nghĩ về nó nếu nó có lẽ có một chút ý nghĩa khôn ngoan? Vì vậy, trước tiên bạn thực hiện một số hoạt động khôn ngoan một chút trên foo
và sau đó !
về kết quả? Nhưng tôi dường như không nhớ !
được sử dụng như một nhà điều hành khôn ngoan chút và dường như không tìm thấy bất kỳ tài liệu tham khảo nói với tôi nó là một trong hai. Theo như tôi có thể nói !
ở chỉ được sử dụng như một nhà điều hành hợp lý và trong trường hợp đó
!!foo == foo
Bạn cũng có thể viết 'x +++++ y + 1', nhưng đó là một ý tưởng tồi. – msw
@GrahamBorland Bây giờ tôi sẽ đi qua đó và bỏ phiếu đó như là một bản sao của điều này. –
Bạn cũng có thể muốn đọc nội dung này: [* what is !! trong c? *] (http://stackoverflow.com/questions/14751973/what-is-in-c?lq=1). –