C # to wieloparadygmatyczny, zarządzany obiektowy język programowania ze zbieraniem elementów bezużytecznych stworzony przez firmę Microsoft równolegle z platformą .NET
W generics C # możemy zadeklarować ograniczenie parametru typu Tdo domyślnego konstruktora, mówiąc where T : new(). Jednak żadne inne ograniczenia tego rodzaju nie są ważne - new(string)na przykład itp. Z jakich powodów projekt i / lub implementacja języka jest tego przyczyną? Czy jest coś w sposobie działania konstruktorów lub …
Szukam zalecenia najlepszych praktyk dla komentarzy XML w języku C #. Podczas tworzenia właściwości wygląda na to, że oczekiwana dokumentacja XML ma następującą postać: /// <summary> /// Gets or sets the ID the uniquely identifies this <see cref="User" /> instance. /// </summary> public int ID { get; set; } Ale …
Wiele języków podoba C++, C#i Javapozwalają na tworzenie obiektów, które reprezentują typów prostych, jak integeri float. Za pomocą interfejsu klasy można przesłonić operatorów i wykonać logikę, np. Sprawdzanie, czy wartość przekracza regułę biznesową równą 100. Zastanawiam się, czy w niektórych językach można zdefiniować te reguły jako adnotacje lub atrybuty zmiennej …
private string mWhatever; private string Whatever { get { return this.mWhatever; } set { this.mWhatever = value; } } Widziałem osoby, które tworzą nieruchomości dla każdego członka, prywatne czy nie ... czy to ma jakiś sens? Widziałem, że ma to sens w 1% przypadków, gdy chcesz kontrolować dostęp do członka …
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
Pracowałem zgodnie z zasadą równoczesnego programowania bez udziału. Zasadniczo wszystkie moje wątki robocze mają niezmienne kopie tylko do odczytu tego samego stanu, które nigdy nie są udostępniane między nimi ( nawet przez odniesienie ). Ogólnie rzecz biorąc, działało to naprawdę dobrze. Teraz ktoś wprowadził bufor singleton bez blokady ( np. …
Należy właściwości w C # mają skutki uboczne obok powiadamiania o zmianach w jego stanach? Widziałem właściwości używane na kilka różnych sposobów. Od właściwości, które będzie załadować wartość po raz pierwszy oni są dostępne do właściwości, które mają ogromne skutki uboczne, takie jak powodując przekierowanie na inną stronę.
W obecnej formie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi poparte będą faktami, referencjami lub wiedzą fachową, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i ewentualnie ponownie otworzyć, odwiedź centrum pomocy w …
Mam bardzo duże drzewo węzłów pamięci i muszę je przechodzić. Przekazywanie zwróconych wartości każdego węzła podrzędnego do ich węzła nadrzędnego. Należy to zrobić, dopóki wszystkie węzły nie będą miały bąbelków danych aż do węzła głównego. Traversal działa w ten sposób. private Data Execute(Node pNode) { Data[] values = new Data[pNode.Children.Count]; …
Właśnie zacząłem bawić się w async / czekaj w .Net 4.5. Na początku jestem ciekawy, dlaczego słowo kluczowe asynchroniczne jest potrzebne? Wyjaśnienie, które przeczytałem było takie, że jest to marker, więc kompilator wie, że metoda na coś czeka. Ale wydaje się, że kompilator powinien być w stanie to zrozumieć bez …
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 5 lat temu . Jaka jest sytuacja podczas kodowania w C #, gdzie używanie wskaźników jest dobrą lub konieczną …
Widzę kilka postów, w których podkreślono znaczenie obsługi wyjątku w centralnej lokalizacji lub na granicy procesu jako dobrej praktyki zamiast zaśmiecania każdego bloku kodu wokół try / catch. Mocno wierzę, że większość z nas rozumie znaczenie tego, jednak widzę, że ludzie nadal kończą się anty-wzorcem catch-log-rethrow, głównie dlatego, że aby …
Czy można dodawać odroczone twierdzenia w ten sposób? var actualKittens = actualKittens.Select(kitten => { Assert.IsСute(kitten); return kitten }); Dlaczego? Mogę więc powtórzyć tylko raz, nawet w przypadku stwierdzeń oczekujących zmaterializowanej kolekcji, na przykład: CollectionAssert.AreEquivalent(expectedKittens, actualKittens.ToList()); Może to być nie tylko Select, ale metoda ze zdefiniowanym iteratorem i mająca wiele kontroli …
Korzystam z programu Visual Studio, aby utworzyć aplikację GUI w języku C #. Przybornik służy jako sprytna paleta komponentów, która pozwala mi łatwo przeciągać i upuszczać przyciski i inne elementy (dla jasności powiem przycisk, gdy mam na myśli „sterowanie”) na moim formularzu, co sprawia, że formy statyczne są dość łatwe …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.