Câu hỏi được gắn thẻ «typechecking»

Trình đánh máy thực thi rằng các biểu thức trong một ngôn ngữ lập trình nhất định được đánh máy tốt - tức là tuân thủ các quy tắc của một hệ thống kiểu cụ thể.



3
Kiểm tra loại lớp trong TypeScript
Trong ActionScript, có thể kiểm tra loại tại thời gian chạy bằng toán tử is : var mySprite:Sprite = new Sprite(); trace(mySprite is Sprite); // true trace(mySprite is DisplayObject);// true trace(mySprite is IEventDispatcher); // true Có thể phát hiện nếu một biến (mở rộng hoặc) là một lớp hoặc giao …

3
Nhập chú thích cho * args và ** kwargs
Tôi đang thử các chú thích kiểu Python với các lớp cơ sở trừu tượng để viết một số giao diện. Có cách nào để chú thích các loại có thể *argsvà **kwargs? Ví dụ, làm thế nào một người có thể diễn tả rằng các đối số hợp lý …

8
Java: Instanceof và Generics
Trước khi tôi xem qua cấu trúc dữ liệu chung của mình để tìm chỉ mục của một giá trị, tôi muốn xem liệu nó có phải là một thể hiện của loại thisđã được tham số hóa hay không. Nhưng Eclipse phàn nàn khi tôi làm điều này: @Override …



1
Tại sao không phải là ràng buộc của trò lừa bịp mà làm việc trong trường hợp HasField được xác định thủ công này?
Tôi có mã này (phải thừa nhận là lạ) sử dụng ống kính và GHC.Records : {-# LANGUAGE DataKinds, PolyKinds, FlexibleInstances, UndecidableInstances #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} module Main where import Control.Lens import GHC.Records data Glass r = …

2
Các loại tổng - Tại sao trong Haskell là `show (Int | Double)` khác với` (show Int) | (hiển thị gấp đôi) `
Tại sao những điều này không tương đương? show $ if someCondition then someInt else some double và if someCondition then show someInt else show someDouble Tôi hiểu rằng nếu bạn tách riêng if ... elsephần trong ví dụ đầu tiên thành một biểu thức thì bạn không thể biểu …

1
Thực hiện phương pháp chung của Il Ilalal: Tại sao tôi không nhận được bất kỳ lỗi biên dịch nào?
Tôi đã có một giao diện chứa một phương thức có chữ ký này: <P extends MergeProperty<T> & RestartApplicant> List<P> loadPropertiesFrom(T p1, T p2); Về cơ bản, MergePropertylà một lớp KHÔNG thực hiện RestartApplicantvà RestartApplicantlà một giao diện chức năng có chứa một phương thức không thực sự quan trọng …
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.