Вопросы с тегом «const»

104
Почему argc не является константой?

int main( const int argc , const char[] const argv) Поскольку в пункте № 3 эффективного C ++ сказано: «По возможности используйте const», я начинаю думать: «Почему бы не сделать эти« постоянные »параметры const?». Есть ли какой-нибудь сценарий, при котором значение argcизменяется в...

103
C ++ 0x лямбда-захват по значению всегда const?

Есть ли способ захватить по значению и сделать захваченное значение неконстантным? У меня есть функтор библиотеки, который я хотел бы захватить и вызвать метод, который не является константой, но должен быть. Следующее не компилируется, но создание foo :: operator () const исправляет его. struct...

102
Почему я могу изменить значение константы в javascript

Я знаю, что ES6 еще не стандартизирован, но многие браузеры в настоящее время поддерживают const ключевое слово в JS. В спецификации написано, что: Значение константы не может измениться посредством повторного присвоения, и константа не может быть повторно объявлена. Из-за этого, хотя можно...

101
Доступ к элементу карты const в C ++

Я попытался использовать оператор [] для доступа к элементу на карте const C ++, но этот метод не удался. Я также пытался использовать "at ()", чтобы сделать то же самое. На этот раз это сработало. Однако я не смог найти никаких ссылок на использование "at ()" для доступа к элементу в константной...

50
Инициализируйте несколько постоянных членов класса, используя один вызов функции C ++

Если у меня есть две разные постоянные переменные-члены, которые нужно инициализировать на основе одного и того же вызова функции, есть ли способ сделать это, не вызывая функцию дважды? Например, класс дроби, где числитель и знаменатель постоянны. int gcd(int a, int b); // Greatest Common Divisor...

23
Почему функции абсолютного значения в C не принимают константные входные данные?

В C прототипом функции абсолютного значения (которая принимает число с плавающей запятой) является float fabsf( float ); Почему этот прототип не принимает постоянное значение, например так: float fabsf( float const ); fabsf не изменит значение ввода, не так ли? Если у меня есть функция, которая...

20
Как глобальные консты, которые не являются копиями или клонами, работают в Rust?

Скажем, у меня есть следующий фрагмент ( детская площадка ) struct A { pub val: u32 } const GLOBAL_A: A = A {val: 2}; fn main() { let some_a: A = GLOBAL_A; let other_a: A = GLOBAL_A; println!("double val = {}", some_a.val + other_a.val); } Поскольку Aэто ни то, Cloneни другое Copy, я бы...

14
Я хочу добавить новый сегментId (с тем же именем) в массив отображения, но с другим elementId, но с тем же методом

Ниже находится MapperInterface.php Я пытаюсь выяснить, как добавить оператор if-else в const. картографический массив. Примерно так: 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...

14
Вызов функции с указателем на неконстантный и указатель на константные аргументы с тем же адресом

Я хочу написать функцию, которая вводит массив данных и выводит другой массив данных, используя указатели. Мне интересно, каков результат, если оба srcи dstуказали на один и тот же адрес, потому что я знаю, что компилятор может оптимизировать для const. Это неопределенное поведение? (Я отметил теги...

13
Как можно быстро вычислить const expr

Я пробовал константные выражения, которые оцениваются во время компиляции. Но я играл с примером, который кажется невероятно быстрым при исполнении во время компиляции. #include<iostream> constexpr long int fib(int n) { return (n <= 1)? n : fib(n-1) + fib(n-2); } int main () { long int res...

9
Как предотвратить изменение массива данных?

Скажем, у меня есть класс, который выглядит следующим образом (это только пример): 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() { delete[]...

9
В чем разница между квалификатором const в C и квалификатором const в C ++?

Я нашел комментарий пользователя R .. : C и C ++ - это не один и тот же язык. В частности, C не constимеет ничего общего с C ++ const. Я знаю, что одно отличие между constклассификатором в C и constклассификатором в C ++ заключается в его связи по умолчанию. Объект, объявленный в области...