Я регулярно использую константу при работе со структурами данных в памяти и сохраняю свой код константным, но я не уверен, как константа должна применяться к более сложным объектам, таким как следующее: объекты ...
Я понимаю, что указатель const может быть объявлен несколькими способами: const int * intPtr1; // Объявляет указатель, который не может быть изменен.
int * const intPtr2; // Объявляется указатель, содержимое которого не может быть ...
C++11 §12.1/14: Во время построения const объекта, если доступ к значению объекта или любого из его подобъектов осуществляется через lvalue, которое не получено, прямо или косвенно, из ...
Я читал свою книгу по C ++ (Deitel), когда наткнулся на функцию для вычисления объема куба. Код следующий: двойной куб (const double side) {обратная сторона * сторона * сторона;
} The ...
После подробного ознакомления с ISO / IEC 14882, Язык программирования - C ++, я все еще не понимаю, зачем нужна константа для неявного преобразования для пользователя -определенный тип с конструктором с одним аргументом, например ...
Естественно, это не скомпилируется: int &z = 3; // error: invalid initialization of non-const reference .... и это скомпилируется: const int &z = 3; // OK Теперь рассмотрим: const int y = 3;
int &...
Я уверен, что следующий код не должен компилироваться. Но в g++ он компилируется! Посмотрите, как он компилируется на http://codepad.org/MR7Dsvlz . Код: #include using namespace std; int ...
Я был удивлен, обнаружив эту "дыру" в "константности": #include class A
{ int r ;
public: A():r(0){} void nonconst() { puts( "I am in ur nonconst method" ) ; r++; }
} ...
В C ++ мы имеем следующее: int * p1; // указатель на int
const int * p2; // указатель на константу int
int * const p3; // постоянный указатель на int
const int * const p4; // ...
Недавно я разработал практику превращения многих вещей в свой код как константы: (1) Аргументы функции, которые я знаю, что никогда не изменится. например: void foo (const int i, const string s)
...
Рассмотрим пример программы ниже: #include с использованием пространства имен std; тест класса
{общедоступные: статические константные данные с плавающей запятой;
}; float const test :: data = 10; // Line1 int main ()
{...
Допустим, у меня есть #include
#include <вектор>
используя пространство имен std; struct Student
{имя константной строки; int grade; Студент (константная строка и имя): имя (имя) {}
}; ...
В файле заголовка моего класса я пробую следующее и получаю жалобы компилятора: private: static const double some_double = 1.0; Как вы должны это сделать?
Это общий вопрос программирования. Я изучаю C ++ и узнал, что любые константные переменные, например: const int i или int * const ptr, должны быть инициализированы сразу. Это также ...
В основном я просто хочу перебрать строку символов, вытаскивая каждый из них, и каждый из них должен быть типа const char *, чтобы я мог передать его функции. вот пример. Спасибо за вашу помощь. ...
У меня есть вектор как член в классе, и я хочу вернуть ссылку на него через функцию getVector (), чтобы иметь возможность изменить его позже. Разве не лучше использовать функцию getVector () как ...
Чем больше я изучаю эту проблему, тем больше запутываюсь. Это домашнее задание, в котором нужно дополнить код, данный нам профессором. Я знаю, что проблема связана с ...
Итак, у меня есть умный итератор, который имитирует карту const_iterator, и ему необходимо внутренне построить возвращаемый тип. Очевидно, я хотел бы сохранить пару в моем классе итератора (поскольку я ...
У меня есть шейдер OpenGL, написанный на glsl. У меня есть глобально определенный массив в верхней части заголовка, вот так: const int permutations[256] = int[256]( 64 , 34 , 36 , 137 , 120 , 122 , 246 , 46 , ...
У меня есть константный метод в моем классе, который нельзя изменить на неконстантный. В этом методе мне нужно вызвать неконстантный метод, но компилятор не позволяет мне это сделать. Есть ли способ обойти это? Здесь ...
В шаблоне C ++ с универсальным типом T я могу использовать const T & для получения ссылки на константу T. Однако, если теперь T сам является ссылочным типом (например, T = int &), указанный выше термин разрешает ...
Если я никогда не использую адрес статической константной переменной, выделяется ли для нее память при использовании достаточно современного компилятора?
Я думал, что понятие «константная корректность» довольно хорошо определено, но когда я говорил об этом с другими людьми, казалось, у нас были разные представления о том, что это значит. Некоторые люди говорят, что это о ...
Возможно, заголовок сам по себе непонятен ...
У меня есть функция f (предоставленная какой-то библиотекой), которая принимает в качестве аргумента указатель на функцию с подписью void g ( int *), т.е. void f (void (* g) (int *)); ...
У меня есть пользовательский класс, который я хочу вести себя как встроенный тип. Однако я заметил, что можно инициализировать const-переменную этого класса без указания начального значения. В настоящее время мой класс ...
Это прекрасно компилируется с текущим компилятором MSVC: struct Foo
{
} const foo; Однако он не может быть скомпилирован с текущим компилятором g ++: ошибка: неинициализированная const 'foo' [-fpermissive]
...