Const – вопросы и ответы

74
голоса
3
ответа
У меня есть программа, и в этой программе есть несколько переменных (имя пользователя и "уровень привилегий" ), которые изменяются только при входе пользователя в систему. Есть ли способ "защитить"...
4 недели, 1 день назад Phoexo
105
голосов
6
ответов
У меня есть const-overloaded методы в моем классе: class A{ public: typedef int data[10]; data& operator[](int index); const data& operator[](int index) const; } Этот класс реализует copy-o...
4 недели, 1 день назад j_kubik
207
голосов
3
ответа
Я прочитал "Эффективное С++ 3rd Edition", написанное Скоттом Мейерсом. Пункт 3 книги "Использовать const , когда это возможно", говорит, что если мы хотим предотвратить случайное присвоение значени...
4 недели, 1 день назад skymountain
95
голосов
1
ответ
Возможный дубликат: Почему нет концепции "const-correctness" для статических функций-членов класса? Эти вопросы очень похожи на многие из тех, что я нашел на SO, но прежде чем вы получите двойное па
4 недели, 1 день назад swalog
96
голосов
1
ответ
У меня есть следующий код, который работает нормально: //function1 for decoding base64 int base64_decode (const char *base64, char *to) { /*function*/ } //code which is working buf_struct tmpbuf;//...
4 недели, 1 день назад Sam Reina
60
голосов
1
ответ
Макрос FCORE предназначен для экспорта общей библиотеки. Это мой заголовочный файл FMath.h namespace FMath { // ... FCORE const float PI_32 = 3.14159265359f; // pi FCORE inline float Floor(float va...
4 недели, 1 день назад Cahit Burak Küçüksütcü
104
голоса
2
ответа
Я хотел бы определить, является ли тип const или не используется функция шаблона, например: template <typename TTYPE> bool IsConst(TTYPE) {return false;} template <typename TTYPE> bool ...
4 недели, 1 день назад user1432452
74
голоса
4
ответа
Если я получаю инструкцию С++ следующим образом: double getPrice() const; Что здесь отображается const ? Спасибо.
4 недели, 1 день назад Simplicity
96
голосов
2
ответа
Я отвечал на question и сделал эту тестовую программу. #include <stdio.h> int main() { volatile const int v = 5; int * a = &v; *a =4; printf("%d\n", v); return 0; } Без ключевого слова vo...
4 недели, 1 день назад aaronman
86
голосов
1
ответ
Есть ли способ сделать x массив постоянным после того, как данные будут прочитаны от пользователя? Есть ли способ сделать переменную не изменяемой после того, как значение считывается от пользовате...
4 недели, 1 день назад Isinlor
146
голосов
3
ответа
Сегодня я узнал, что такой код работает. Это звучит очень странно для меня, потому что, насколько я всегда знал, вы не можете изменить кого-либо из членов функции-члена. Вы фактически не можете сде...
4 недели, 1 день назад axe
86
голосов
2
ответа
#include <iostream> void f(const int * & p) { int i =0; i = p[0]; std::cout << i << std::endl; } int main() { int * p =new int[1]; p[0] =102; f(p); return 1; } Компилятор gcc ...
4 недели, 1 день назад stonebird
61
голос
3
ответа
Этот вопрос обновлен. Проверьте код. Следующий код был скомпилирован с VС++ Nov 2012 CTP. Книга Скотта Мейерса " Эффективный С++ " рекомендует использовать метод во избежание дублирования в констан...
1 месяц назад xmllmx
60
голосов
1
ответ
Скажем, у меня есть массив char или char, который не является континентом. Я изменяю его и т.д. Затем я хочу позже отключить все изменения после. Есть ли способ восстановить символ? Этот вопрос воз...
1 месяц назад Kelvin
129
голосов
1
ответ
У меня есть структура, члены которой должны быть введены только тогда, когда структура построена в первый раз. Таким образом, я могу создать конструктор и установить значения соответствующим образо...
1 месяц назад Quest
73
голоса
3
ответа
Когда я перебираю vector<bool> , я обнаруживаю, что элементы, разыменованные через итератор, распознаются так, как будто они являются константами. Почему это? Измените либо контейнер, либо ти...
1 месяц назад plong
85
голосов
3
ответа
У меня есть следующие прототипы перегрузки: ostream& operator<<(ostream & outputstream, my_arr& arr) my_arr operator+(const my_arr& left, const my_arr& right) Я звоню: cou...
1 месяц назад SkypeMeSM
212
голосов
4
ответа
Я всегда считал, что GCC помещает переменную static const в сегменты .rodata (или в .text сегменты для оптимизации) ELF или такого файла. Но это не так. В настоящее время я использую gcc (GCC) 4.7....
1 месяц назад starrify
74
голоса
3
ответа
#include <iostream> using namespace std; int main(void) { const int a1 = 40; const int* b1 = &a1; int * c1 = (int *)(b1); *c1 = 'A'; cout<<*c1<<endl; cout<<a1<<end...
1 месяц назад akash
120
голосов
3
ответа
Я знаю, что это было задано очень много, но единственными ответами, которые я смог найти, было то, что константа была отброшена с помощью (int *) или аналогичной. Почему спецификатор const не работ...
1 месяц назад Oskar N.
61
голос
5
ответов
Я переживал: Часто задаваемые вопросы о наследовании С++ и решил реализовать его (просто чтобы узнать) #include "Shape.h" void Shape::print() const { float a = this->area(); // area() is pure vi...
1 месяц назад ra170
113
голосов
11
ответов
У меня есть словарь, который выглядит примерно так: typedef struct dictNode { int key; char *value; struct dictNode *next; } Dict; И функция get() , которая выглядит примерно так: char *get(const D...
1 месяц назад Ricardo Amaral
-4
голоса
1
ответ
У меня есть std :: список "Ray" -objects, который я хочу перебрать. for (std::list<Ray>::const_iterator it = clRay.begin(), end = clRay.end(); it != end; ++it) { *it->setDir( m_v3Position ...
1 месяц назад datafridge
61
голос
1
ответ
В C++ есть ли способ автоматически генерировать константы по нескольким файлам во время компиляции? Точно так же, как перечисление имеет константы, автоматически генерируемые в одном файле, но конс...
1 месяц назад jtedit
113
голосов
3
ответа
Рассмотрим следующий класс шаблонов: template <typename T> class Function { public: virtual float eval( const T &x, const T &y ) = 0; }; Так как функция eval не должна изменять значен...
1 месяц назад Sanparith Marukatat
75
голосов
1
ответ
Так как я пришел в C из Java более высокого уровня, где у нас нет квантификаторов типов, таких как const , чтобы сделать тип неизменяемым, мы должны объявить все его члены окончательными и быть уве...
1 месяц назад Some Name
147
голосов
6
ответов
Я пытаюсь использовать возвращаемый тип const MyClass * const . Однако я получаю предупреждение: Предупреждение: # 815-D: тип классификатора по типу возврата не имеет смысла. Является ли это недейс...
1 месяц назад Dynite
74
голоса
4
ответа
В printMessage, если вы обращаетесь к вектору константного класса с использованием индекса, он работает нормально, но не с итератором (* itr). Если итератор объявлен как constant_iterator, тогда он...
1 месяц назад schakkere
113
голосов
5
ответов
В моей текущей реализации много конструкторов копирования с этим синтаксисом MyClass::Myclass(Myclass* my_class) Действительно ли это (functionnaly) отличается от MyClass::MyClass(const MyClass&...
1 месяц назад octoback
85
голосов
1
ответ
У меня есть следующие два файла //########### //a.cpp //########### #include <iostream> int main() { extern int var; //Why is this allowed? std::cout << var << std::endl; var = 99...
1 месяц назад bibbsey
74
голоса
2
ответа
У меня такой код: bool doSomething() { std::cout << "I'm here!" return true; } const bool x = doSomething(); Если он помещен в cpp файл в консольном приложении Visual С++, код запускается как...
1 месяц назад Philipp
62
голоса
8
ответов
У меня есть переменная, которая является главой связанного списка. Я хочу сделать его const, потому что его никогда не следует изменять, переменная используется во всей программе, поэтому я подумал...
1 месяц назад emge
60
голосов
3
ответа
например, cublasStatus_t cublasSgemm(cublasHandle_t handle, cublasOperation_t transa, cublasOperation_t transb, int m, int n, int k, const float *alpha, const float *A, int lda, const float *B, int...
1 месяц назад mchen
133
голоса
9
ответов
В С++ допускается изменение переменной цикла внутри цикла for: for( int i = 0; i < limit; i++ ) { if( condition ) { i--; } } Теперь, если тело цикла довольно сложно, читателю не сразу становится...
1 месяц назад sharptooth
105
голосов
1
ответ
Следующий код компилируется и работает. Отображаемые значения a и n равны 4. #include <iostream> using namespace std; int a = 2; void foo(int const&n) { a = n*2; cout<<"a = "<<...
1 месяц назад xGedaJastox
95
голосов
2
ответа
Я упростил свою проблему с помощью простого примера: immagine Я управляю коллекцией элементов std::vector<Element> , каждый элемент имеет несколько элементов: struct Element { public: double ...
1 месяц назад Caduchon
85
голосов
1
ответ
Отвечая на этот вопрос , я натолкнулся на интересную разницу в разрешении перегрузки rvalue на ссылку между операторами-членами и нечленами. Учитывая два нечленовских оператора: один передающий лев...
1 месяц назад zennehoy
140
голосов
8
ответов
Я работаю над игрой и интересуюсь вопросом. У меня есть некоторые общие значения для игры, которые я хочу реализовать в одном файле. Прямо сейчас у меня есть что-то вроде этого: constants.cpp exter...
1 месяц назад rlbond
95
голосов
1
ответ
Это мой класс. Я использую yii2. PHP 5.6. Он не может загружать страницу, это говорит Использование неопределенной константы 5242880 - предполагается "5242880" class PicturesOfUser extends \yii\db\...
1 месяц назад Misko Mali
129
голосов
5
ответов
Я не уверен, почему, но кажется, что я не могу вызывать переменные let или const , если я объявляю их в инструкции if/else . if (withBorder) { const classes = `${styles.circularBorder} ${styles.dim...
1 месяц назад Johhan Santana
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема