T& f() { // some code … } const T& f() const { // some code … } He visto esto un par de veces ahora (en el libro introductorio que he estado estudiando hasta ahora). Sé que el primer const hace que el valor de retorno sea const, en otras palabras: no modificable. El […]
El siguiente ejemplo añadió confusión en mi comprensión. No puedo entender cómo es posible modificar la variable const local. Por favor, ayúdame a entender lo mismo. /* Compile code without optimization option */ // volatile.c #include int main(void) { const int local = 10; int *ptr = (int*) &local; printf(“Initial value of local : %d […]
Nuestra herramienta de análisis estático se queja de un “calificador de tipo inútil en el tipo de devolución” cuando tenemos prototipos en archivos de encabezado como: const int foo(); Lo definimos de esta manera porque la función devuelve una constante que nunca cambiará, pensando que la API parecía más clara con const en su lugar. […]
Tengo el código: class A { public: A() = default; private: int i = 1; }; int main() { const A a; return 0; } Comstack bien en g ++ (ver ideone ), pero falla en clang ++ con error: la inicialización predeterminada de un objeto de tipo const ‘const A’ requiere un constructor predeterminado […]
Mis comentarios sobre esta respuesta me hicieron pensar en los problemas de constness y sorting. Jugué un poco y reduje mis problemas al hecho de que este código: #include int main() { std::vector v; } no se comstackrá – no se puede crear un vector de construcciones. Obviamente, debería haber sabido esto (e intelectualmente lo […]
Posibles duplicados: ¿Por qué alguien usaría #define para definir constantes? diferencia entre una macro y una const en c ++ C ++ – enum vs. const vs. #define ¿Cuál es la diferencia entre usar #define y const para crear una constante? ¿Alguien tiene una ventaja de rendimiento sobre el otro? Naturalmente prefiero usar el const […]
void DoWork(int n); void DoWork(const int &n); ¿Cuál es la diferencia?
Quiero saber la diferencia entre const int* ptr; y int * const ptr; y cómo funciona Es bastante difícil para mí entender o recordar esto. Por favor ayuda.
De C ++ Primer 5th Edition, dice: int f(int){ /* can write to parameter */} int f(const int){ /* cannot write to parameter */} Las dos funciones son indistinguibles . Pero como usted sabe, las dos funciones realmente difieren en cómo pueden actualizar sus parámetros. ¿Puede alguien explicarme? EDITAR Creo que no interpreté bien mi […]
Estoy muy confundido sobre la palabra clave const . Tengo una función que acepta una matriz de cadenas como parámetro de entrada y una función que acepta una cantidad variable de argumentos. void dtree_joinpaths(char* output_buffer, int count, …); void dtree_joinpaths_a(char* output_buffer, int count, const char** paths); dtree_joinpaths invoca internamente dtree_joinpaths_a después de que ha creado […]