«type-casting» 태그된 질문

7
PHP에서 형 변환 변수를 사용하는 실용적인 이유는 무엇입니까?
우리 대부분이 알고 있듯이 PHP는 타이핑 이 약 합니다. 그렇지 않은 사람들을 위해 PHP.net은 말합니다. PHP는 변수 선언에서 명시 적 유형 정의를 요구하지 않거나 지원하지 않습니다. 변수 유형은 변수가 사용되는 컨텍스트에 따라 결정됩니다. 그것을 좋아하거나 미워합니다. PHP는 변수를 즉석에서 다시 캐스팅합니다. 따라서 다음 코드가 유효합니다. $var = "10"; $value = …

10
서브 클래스의 API를 오염 시키더라도 스스로 캐스팅하는 객체를 갖는 것이 괜찮습니까?
나는 기본 수업이 Base있습니다. 그것은 두 개의 서브 클래스를 가지고 Sub1와 Sub2. 각 서브 클래스에는 몇 가지 추가 메소드가 있습니다. 예를 들어, Sub1has Sandwich makeASandwich(Ingredients... ingredients)및 Sub2has가 boolean contactAliens(Frequency onFrequency)있습니다. 이러한 방법은 다른 매개 변수를 사용하고 완전히 다른 작업을 수행하기 때문에 완전히 호환되지 않으며이 문제를 해결하기 위해 다형성을 사용할 수 …

5
명시 적 캐스팅 연산자를 사용하는 것이 합리적입니까 아니면 나쁜 해킹입니까?
나는 큰 물건을 가지고있다 : class BigObject{ public int Id {get;set;} public string FieldA {get;set;} // ... public string FieldZ {get;set;} } 특수한 DTO와 유사한 객체 : class SmallObject{ public int Id {get;set;} public EnumType Type {get;set;} public string FieldC {get;set;} public string FieldN {get;set;} } 개인적으로 BigObject를 SmallObject로 명시 …


4
캐스팅은 무엇을 의미합니까?
CI와 같은 저수준 언어로 코딩 할 때, 캐스팅은 때때로 '이 바이트를 마치 항상이 다른 유형 인 것처럼 재 해석'하고 다른 경우에는이 값을 지능적으로이 다른 유형으로 변환하는 것을 의미합니다. 단어의 원래 의미는 무엇이며 전환을 기대할 때와 원시 해석을 기대할 때 일관성이 있습니까?

6
다운 캐스팅을 피하는 방법?
내 질문은 슈퍼 클래스 동물의 특별한 경우에 관한 것입니다. 내 Animal캔 moveForward()과 eat(). Seal확장 Animal합니다. Dog확장 Animal합니다. 그리고 Animal이라고 불리는 특별한 생물이 있습니다 Human. Human에 speak()의해 구현되지 않은 메소드도 구현합니다 Animal. 수락하는 추상 메소드의 구현에서 메소드 Animal를 사용하고 싶습니다 speak(). 다운 캐스트를하지 않으면 불가능한 것 같습니다. 제레미 밀러 (Jeremy Miller)는 …

3
코드에서 억제 경고를 사용하는 것이 좋습니다?
내가 사용 @SuppressWarnings("unchecked")하고 @SuppressWarnings("null")경고없이 코드를 컴파일을 수 있도록 대부분의 방법보다하지만 내 의심이. 이 Stackoverflow 질문을 찾았습니다 . Jon Skeet는 이에 대한 답변 을 썼습니다 . 그의 말에 따르면, 때로는 Java generics를 사용하여 원하는 작업을 수행 할 수 없으며 컴파일러가 실제로 수행중인 작업이 실행 시간에 합법적이라는 것을 효과적으로 알려야합니다. 그러나 예외가 …

2
dynamic_cast를 사용하지 않는 적절한 디자인?
몇 가지 연구를 한 후에 자주 발생하는 문제를 해결하는 간단한 예를 찾지 못하는 것 같습니다. Squares, Circles 및 기타 모양을 만들고 화면에 표시하고 선택한 후 속성을 수정 한 다음 모든 둘레를 계산할 수있는 작은 응용 프로그램을 만들고 싶다고 가정 해 봅시다 . 다음과 같이 모델 클래스를 수행합니다. class AbstractShape { …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.