Pytania otagowane jako const

Stałe w programowaniu to definicje, których wartość jest ustalana podczas wykonywania programu. Na przykład literały w większości języków są stałymi. W referencyjnie przejrzystych stylach programowania wszystkie definicje są stałe. Obszar przechowywania danych kwalifikowany jako const (obiekt, pole, zmienna, parametr) to taki, który „nigdy się nie zmienia”, umożliwiając w ten sposób dodatkowe optymalizacje generatora kodu i dodatkowe statyczne sprawdzanie poprawności programu.


9
Jak mogę przenośnie wywołać funkcję C ++, która na niektórych platformach pobiera znak **, a na innych znak stały **?
Na moich komputerach z systemem Linux (i OS X) iconv()funkcja ma następujący prototyp: size_t iconv (iconv_t, char **inbuf... podczas gdy we FreeBSD wygląda to tak: size_t iconv (iconv_t, const char **inbuf... Chciałbym, aby mój kod C ++ był budowany na obu platformach. W kompilatorach C, przekazanie parametru char**a const char**(lub …
91 c++  const  portability 




3
Wywołanie funkcji ze wskaźnikiem na non-const i wskaźnikiem na const argumentów o tym samym adresie
Chcę napisać funkcję, która wprowadza tablicę danych i wyprowadza inną tablicę danych za pomocą wskaźników. Zastanawiam się, co jest wynikiem zarówno jeśli srci dstwskazał na samym adresem, bo wiem, kompilator może zoptymalizować dla const. Czy jest to niezdefiniowane zachowanie? (Oznacziłem zarówno C, jak i C ++, ponieważ nie jestem pewien, …

2
Chcę dodać nowy segmentId (o tej samej nazwie) do mojej tablicy mapowania, ale z innym elementId, ale tą samą metodą
Poniżej znajduje się MapperInterface.php Próbuję wymyślić, jak dodać instrukcję const do const. tablica odwzorowań. Coś takiego: if (LIN02 == “VN”) o Treat LIN03 as the SKU · else if (LIN04 == “VN”) o Treat LIN05 as the SKU <?php declare(strict_types=1); namespace Direct\OrderUpdate\Api; use Direct\OrderUpdate\Api\OrderUpdateInterface; /** * Interface MapperInterface * Translates …
14 php  arrays  mapping  const 

2
Jak można tak szybko ocenić const expr
Próbowałem wyrażeń stałych, które są oceniane podczas kompilacji. Ale bawiłem się przykładem, który wydaje się niewiarygodnie szybki, gdy jest wykonywany w czasie kompilacji. #include<iostream> constexpr long int fib(int n) { return (n <= 1)? n : fib(n-1) + fib(n-2); } int main () { long int res = fib(45); std::cout …
13 c++  const  constexpr 


1
Jak zapobiec modyfikacji danych tablicowych?
Powiedzmy, że mam klasę, która wygląda tak (to tylko przykład): class A { double *ptr; public: A() : ptr( new double[100] ) {} A( const A &other ) { other.ptr[7] = 15; } void doNotChangeMyData() const { ptr[43] = 14; } void changeMyData() { ptr[43] = 14; } ~A() { …
9 c++  const 

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.