Odniesienie to wartość, która umożliwia programowi pośredni dostęp do określonych danych, takich jak zmienna lub rekord, w pamięci komputera lub na innym urządzeniu magazynującym.
Poniższy kod nie jest kompilowany. int a = 1, b = 2, c = 3; int& arr[] = {a,b,c,8}; Co na ten temat mówi standard C ++? Wiem, że mógłbym zadeklarować klasę, która zawiera odniesienie, a następnie utworzyć tablicę tej klasy, jak pokazano poniżej. Ale naprawdę chcę wiedzieć, dlaczego powyższy …
Jeśli chcemy uzyskać wartość z metody, możemy użyć jednej z wartości zwracanych, na przykład: public int GetValue(); lub: public void GetValue(out int x); Naprawdę nie rozumiem różnic między nimi, więc nie wiem, co jest lepsze. Czy możesz mi to wyjaśnić? Dziękuję Ci.
Otrzymuję ten błąd: Nie można znaleźć nazwy typu lub przestrzeni nazw „AutoMapper” (czy brakuje dyrektywy using lub odwołania do zestawu?) Zabawne jest to, że mam już to odniesienie w swoim projekcie: A to mój kod: using System.Collections.Generic; using DataContract; using SelectorDAL; using AutoMapper; namespace SpecimenSelect { public class SpecimenSelect : …
Jaka jest różnica między argumentami w: int foo1(const Fred &arg) { ... } i int foo2(Fred const &arg) { ... } ? Nie widzę tego przypadku w FAQ parashift.
Przeczytałem, że .NET obsługuje zwracanie odwołań, ale C # tego nie robi. Czy jest jakiś szczególny powód? Dlaczego nie mogę zrobić czegoś takiego: static ref int Max(ref int x, ref int y) { if (x > y) return ref x; else return ref y; }
Powiedzmy, że mam funkcję, która przyjmuje std::function: void callFunction(std::function<void()> x) { x(); } Czy powinienem xzamiast tego przejść przez const-reference ?: void callFunction(const std::function<void()>& x) { x(); } Czy odpowiedź na to pytanie zmienia się w zależności od tego, co robi z nią funkcja? Na przykład, jeśli jest to funkcja …
Oto uproszczony przykład ilustrujący pytanie: class A {}; class B { B(A& a) : a(a) {} A& a; }; class C { C() : b(a) {} A a; B b; }; Więc B jest odpowiedzialny za aktualizację części C. Przepuściłem kod przez lint i narzekał o elemencie referencyjnym: lint # …
O ile wiem, nie ma powodu, dla którego nie powinienem mieć możliwości przekazywania referencji do wskaźnika w C ++. Jednak moje próby kończą się niepowodzeniem i nie mam pojęcia, dlaczego. Oto co robię: void myfunc(string*& val) { // Do stuff to the string pointer } // sometime later { // …
Nie rozumiem błędu cannot move out of borrowed content. Otrzymałem go wiele razy i zawsze go rozwiązywałem, ale nigdy nie rozumiałem dlaczego. Na przykład: for line in self.xslg_file.iter() { self.buffer.clear(); for current_char in line.into_bytes().iter() { self.buffer.push(*current_char as char); } println!("{}", line); } powoduje błąd: error[E0507]: cannot move out of borrowed …
vector<int> v; v.push_back(1); v.push_back(v[0]); Jeśli drugie push_back spowoduje realokację, odwołanie do pierwszej liczby całkowitej w wektorze nie będzie już ważne. Więc to nie jest bezpieczne? vector<int> v; v.push_back(1); v.reserve(v.size() + 1); v.push_back(v[0]); Czy to jest bezpieczne?
W moim folderze do rysowania mam kilka obrazów i wszystkie odnoszą się idealnie, ale kiedy próbuję dodać więcej obrazów o dokładnie tym samym rozmiarze w tym samym folderze i próbuję odwołać się do niego, pojawia się błąd „Nie udało się przekonwertować @ drawable / picture in a drawable ” . …
Mam rozwiązanie C # z dwoma projektami: usługą (projekt główny) i loggerem. Usługa korzysta z klas z loggera. Dodałem referencję do projektu rejestratora w ramach projektu usługi. W czasie projektowania autouzupełnianie działa dobrze: klasy rejestratora są widoczne, referencje, których używam, są odpowiednio pokolorowane. Odbudowuję rozwiązanie i coś idzie nie tak. …
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.