Pytania otagowane jako type-conversion


4
Najlepsze praktyki dotyczące mapowania typów i metod rozszerzenia
Chcę zadać kilka pytań na temat najlepszych praktyk dotyczących typów mapowania i korzystania z metod rozszerzenia w języku C #. Wiem, że ten temat był omawiany wiele razy w ciągu ostatnich kilku lat, ale przeczytałem wiele postów i nadal mam wątpliwości. Problemem, który napotkałem, było rozszerzenie posiadanej przeze mnie klasy …

9
Dlaczego nie może być żadnych niejawnych konwersji?
Jak rozumiem, niejawne konwersje mogą powodować błędy. Ale to nie ma sensu - czy zatem normalne konwersje nie powinny również powodować błędów? Dlaczego nie mieć? len(100) praca przez język interpretujący (lub kompilujący) jako len(str(100)) zwłaszcza, że ​​jest to jedyny (wiem) sposób na to, aby działał. Język wie, jaki jest błąd, …

2
Czy źle jest tworzyć klasy, których jedynym celem jest niejawna konwersja na inną klasę?
Wyobraźmy sobie sytuację, w której korzystamy z biblioteki, która pozwala tworzyć Circleobiekty, w których można określić promień i środek okręgu, aby je zdefiniować. Jednak z jakiegoś powodu wymaga również wymaganego flavourparametru. Powiedzmy teraz, że naprawdę muszę korzystać Circlez własnej aplikacji, ale na potrzeby mojej aplikacji mogę ustawić smak za Flavours.Cardboardkażdym …

3
Czy poleganie na niejawnej konwersji argumentów jest uważane za niebezpieczne?
C ++ ma funkcję (nie potrafię ustalić jej właściwej nazwy), która automatycznie wywołuje pasujące konstruktory typów parametrów, jeśli typy argumentów nie są oczekiwanymi. To bardzo prosty przykład jest to wywołanie funkcji, która spodziewa się std::stringz const char*argumentem. Kompilator automatycznie wygeneruje kod w celu wywołania odpowiedniego std::stringkonstruktora. Zastanawiam się, czy to …
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.