Pytania otagowane jako casting

Rzutowanie to proces, w którym typ obiektu jest jawnie konwertowany na inny typ, jeśli konwersja jest dozwolona. Ten proces może prowadzić do zmiany wartości.

6
„rzucanie” z refleksją
Rozważmy następujący przykładowy kod: class SampleClass { public long SomeProperty { get; set; } } public void SetValue(SampleClass instance, decimal value) { // value is of type decimal, but is in reality a natural number => cast instance.SomeProperty = (long)value; } Teraz muszę zrobić coś podobnego poprzez refleksję: void SetValue(PropertyInfo …
81 c#  reflection  casting 

8
Najszybszy sposób na przekonwertowanie kluczy i wartości dyktu z „unicode” na „str”?
Otrzymuję dyktando z jednej „warstwy” kodu, na którym są wykonywane pewne obliczenia / modyfikacje przed przekazaniem go do innej „warstwy”. Oryginalne klucze i wartości „string” są takie unicode, ale warstwa, do której są przekazywane, akceptuje tylko str. Będzie to często nazywane, więc chciałbym wiedzieć, jaki byłby najszybszy sposób na konwersję …
81 python  casting  types 

3
Dlaczego javac dopuszcza niektóre niemożliwe rzuty, a inne nie?
Jeśli spróbuję rzucić Stringajava.util.Date , kompilator Java wyłapuje błąd. Dlaczego więc kompilator nie oznacza następującego błędu jako błędu? List<String> strList = new ArrayList<>(); Date d = (Date) strList; Oczywiście JVM rzuca ClassCastException w czasie wykonywania, ale kompilator go nie oflaguje. Zachowanie jest takie samo w przypadku javac 1.8.0_212 i 11.0.2.

6
Dlaczego to twierdzenie, że ostrzeżenie o typie dereferencji jest specyficzne dla kompilatora?
Czytałem różne posty na temat Przepełnienia stosu RE: dereferujący błąd wskaźnika pisanego czcionką typu. Rozumiem, że błąd jest zasadniczo ostrzeżeniem kompilatora o niebezpieczeństwie dostępu do obiektu za pomocą wskaźnika innego typu (choć wydaje się, że istnieje wyjątek char*), co jest zrozumiałym i rozsądnym ostrzeżeniem. Moje pytanie jest specyficzne dla poniższego …
38 c  pointers  casting 

6
Jaki jest prawidłowy sposób konwersji 2 bajtów na 16-bitową liczbę całkowitą ze znakiem?
W tej odpowiedzi , Zwol wykonane tego twierdzenia: Prawidłowym sposobem konwersji dwóch bajtów danych ze źródła zewnętrznego na 16-bitową liczbę całkowitą ze znakiem jest użycie funkcji pomocniczych takich jak to: #include <stdint.h> int16_t be16_to_cpu_signed(const uint8_t data[static 2]) { uint32_t val = (((uint32_t)data[0]) << 8) | (((uint32_t)data[1]) << 0); return ((int32_t) …

1
Dlaczego w C ++ różnice między liczbami ujemnymi static acast <unsigned> są różne, jeśli liczba jest stała, czy nie
Jakie reguły C ++, które oznaczają równość, są fałszywe ? Dany: float f {-1.0}; bool equal = (static_cast&lt;unsigned&gt;(f) == static_cast&lt;unsigned&gt;(-1.0)); Np. Https://godbolt.org/z/fcmx2P #include &lt;iostream&gt; int main() { float f {-1.0}; const float cf {-1.0}; std::cout &lt;&lt; std::hex; std::cout &lt;&lt; " f" &lt;&lt; "=" &lt;&lt; static_cast&lt;unsigned&gt;(f) &lt;&lt; '\n'; std::cout &lt;&lt; "cf" …
28 c++  casting 


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.