97
голосов
9ответов
96872 просмотров

Как лучше всего хранить группу констант, которые использует моя программа?

У меня есть различные константы, которые использует моя программа ... string, int, double и т. д. Как лучше всего их хранить?Я не думаю, что мне нужен Enum, потому что все данные не одного типа, и я хочу вручную установить каждое значение.Должен ли я просто хранить их все в пустом классе?Или ест...

1
голосов
3ответов
261 просмотров

Константы или регистровый класс?

Я столкнулся с классом реестра, и мне интересно, стоит ли возиться с этим или просто использовать константы, или есть отдельные варианты использования глобальных переменных всего сайта, таких как информация о подключении к базе данных, URI веб-сайта и т. д.? Вот класс, с которым я столкнулся:...

28
голосов
1ответов
8147 просмотров

Почему gcc не позволяет использовать const int в качестве выражения case?

Я смотрел на этот вопрос SO и подумал о constints против #defines и понял, что на самом деле не понимаю, почему компилятор не может с этим справиться.Может ли кто-нибудь пролить свет на то, почему следующий код const int FOO = 10; int main(int argc, char** argv) { switch(argc) { ...

85
голосов
6ответов
113731 просмотров

Изменяемый массив в области файла

Я хочу создать постоянный статический массив, который будет использоваться во всем моем файле реализации Objective-C, похожий на что-то вроде этого на верхнем уровне моего файла ".m": static const int NUM_TYPES = 4; static int types[NUM_TYPES] = { 1, 2, 3, 4 }; Я планирую испол...

47
голосов
5ответов
7764 просмотров

Есть ли преимущество использования константных локальных переменных во время выполнения?

Помимо гарантии того, что они не могут быть изменены (в зависимости от ошибки компилятора), выполняет ли JIT какие-либо оптимизации для локальных переменных const? Например. public static int Main(string[] args) { const int timesToLoop = 50; for (int i=0; i<timesToLoop; i++) ...

516
голосов
13ответов
347013 просмотров

В чем разница между char s [] и char * s?

В C можно использовать строковый литерал в объявлении следующим образом: char s[] = "hello"; или так: char *s = "hello"; Так в чем разница?Я хочу знать, что на самом деле происходит с точки зрения продолжительности хранения как во время компиляции, так и во время выполнения.

0
голосов
1ответов
86 просмотров

Постоянный указатель / структуры

В моем классе программирования у нас struct Time { int hours, min, sec; } Мы должны создать метод для вычисления разницы между двумя временами: Time *timeDiff(const Time *t1, const Time *t2) Я думал, что смогу создать разницу во времени, получая все за секунды, а затем вычитая д...

4
голосов
4ответов
3810 просмотров

Могу ли я использовать макеты rspec для заглушки констант версии?

У меня есть код, который нужно запускать только в определенной версии ActiveRecord (временное решение ошибки в старых библиотеках AR).Этот код проверяет значения констант ActiveRecord :: VERSION, чтобы увидеть, нужно ли его запускать. Есть ли способ имитировать эти константы в rspec, чтобы я ...

168
голосов
7ответов
87811 просмотров

PHP 5: константа против статики

В чем разница между использованием const и static в PHP 5? Когда каждый из них подходит?И какую роль играют public, protected и private - если таковые имеются?

0
голосов
1ответов
867 просмотров

Создание общедоступных статических констант в objective-c

Мне нужно создать статические константы в классе, которые могут использоваться другими классами, импортирующими этот класс. Я предполагаю, что enum будет лучшим выходом, поскольку я видел, что оно довольно часто используется в классах Какао.

0
голосов
1ответов
270 просмотров

почему tr1 :: bind не может быть скомпилирован, если тип аргумента - "const int"

#include <iostream> #include <vector> #include <algorithm> #include <iterator> #include <functional> #include <deque> using namespace std; #include <tr1/functional> using namespace std::tr1::placeholders; template<class Function_t> void for_each_x...

593
голосов
17ответов
351651 просмотров

"static const" vs "#define" vs "enum"

Какой из приведенных ниже операторов на C лучше использовать? static const int var = 5; или #define var 5 или enum { var = 5 };

12
голосов
9ответов
5296 просмотров

Сколько памяти занимает константа в C?

при этом: const int a = 5; Интересно, получит ли a 4 байта памяти, как переменная?(в 32-битной системе)

4
голосов
5ответов
27643 просмотров

инициализация многомерного массива const в c ++

В настоящее время я работаю над некоторыми упражнениями в книге по C ++, в которой в качестве обучающего инструмента используются текстовые игры.Упражнение, на котором я застрял, включает в себя заставить преклира выбрать слово из константного массива слов (строк), смешать буквы и попросить игро...

2
голосов
3ответов
436 просмотров

C: const vs no const .. как это компилируется?

У меня есть простая функция C, которую я объявляю как: int strLen(const char* str_) { str_ = (char*) 0; return 0; } Я был очень удивлен, что это компилируется!Почему так? В то время как это не компилируется (что имеет смысл): int str(const int i_) { i_ = 0; return 0; }

7
голосов
7ответов
28513 просмотров

const char * как параметр функции в C ++

ПРИМЕЧАНИЕ. Я знаю, что есть много вопросов, связанных с этим, но я все еще новичок и не могу понять примеры. У меня есть прототип функции следующего вида: int someFunction(const char * sm); Здесь, как вы знаете, const char * означает, что эта функция может принимать константный или не...

0
голосов
2ответов
2569 просмотров

Как преобразовать const wchar * в const char * в Mac OS X?

Есть ли элегантный способ преобразовать const wchar * в const char * в Mac OS X? Кэт

3
голосов
5ответов
3050 просмотров

C ++: борьба с универсальным указателем const

Я столкнулся с некоторыми досадными проблемами с корректностью констант в некотором шаблонном коде, которые в конечном итоге сводятся к следующему наблюдению: по какой-то причине, учитывая тип T контейнера в стиле STL, const typename T::pointer на самом деле, похоже, не дает постоянный тип указа...

2
голосов
12ответов
499 просмотров

Есть ли в .Net какие-либо встроенные константы для обычных чисел, таких как миллион, миллиард и т. Д.?

Есть ли в .Net какие-либо встроенные константы для обычных чисел, таких как миллион, миллиард и т. д.? РЕДАКТИРОВАТЬ: как было предложено, это было сделано для удобства чтения, а не для записи 1000000 или 1000000000. Я знаю, что могу создать свои собственные, просто хотел проверить, что они е...

0
голосов
6ответов
238 просмотров

Как использовать функции-члены постоянных массивов в C ++?

Вот упрощенная версия того, что у меня есть (не работает): prog.h: ... const string c_strExample1 = "ex1"; const string c_strExample2 = "ex2"; const string c_astrExamples[] = {c_strExample1, c_strExample2}; ... prog.cpp: ... int main() { int nLength = c_astrExamples.length(); ...

59
голосов
9ответов
108746 просмотров

Как объявить static const char * в файле заголовка?

Я хотел бы определить константу char * в моем файле заголовка для использования в моем файле .cpp. Итак, я пробовал это: private: static const char *SOMETHING = "sommething"; Это приводит меня к следующей ошибке компилятора: ошибка C2864: «SomeClass :: SOMETHING»: только статиче...

216
голосов
11ответов
154134 просмотров

статическая константа против #define

Лучше использовать static const переменную, чем препроцессор #define? А может это зависит от контекста? Каковы преимущества / недостатки каждого метода?

5
голосов
2ответов
1706 просмотров

Как разделить константы между Interface Builder и кодом?

Мне интересно, есть ли способ использовать константы в Interface Builder, чтобы, например, избежать ручной установки одного и того же цвета в разных местах (иногда это может быть очень утомительной работой ...) В настоящее время я устанавливаю цвет в коде и использую #define для настройки цве...

5
голосов
5ответов
8845 просмотров

Алгоритмы STL и const_iterators

Сегодня я написал небольшой предикат для поиска совпадающих символов в контейнере. Но я столкнулся с проблемой: я хочу использовать этот предикат в вызове std::find_if внутри константного метода класса, выполняя поиск в контейнере, который является членом этого класса. Но я только что заме...

4
голосов
6ответов
8547 просмотров

преобразование указателя в константу в C

Следующий код компилируется без предупреждения в GCC, но выдает предупреждение в Visual Studio 2005. const void * x = 0; char * const * p = x; x указывает на постоянный объект неизвестного типа, а p указывает на постоянный указатель на char.Почему присвоение p должно приводить к предупреж...

4
голосов
3ответов
308 просмотров

Требуется ли спецификатор типа для const?

Требуется ли здесь спецификатор типа? const c = 7; В книге Бьярна Страуструпа «Язык программирования C ++» на странице 80 говорится, что это незаконно.Однако я практиковался в некоторых тестах brainbench , и в одном из вопросов говорится, что по умолчанию используется тип int.Brainbench ...

4
голосов
2ответов
1599 просмотров

Смущает правильность констант со статическим массивом указателей на константные объекты

Я все еще не уверен, что полностью понимаю, как должен работать этот конкретный случай.Итак, если я хочу объявить массив NSStrings, который не изменится, правильно ли это? static NSString * const strings[] = {@"String 1", @"String 2", ...}; Нужен ли static?(что он делает?) Мне где-то не...

6
голосов
6ответов
359 просмотров

Постоянный адрес строк

У меня в программе несколько одинаковых строковых констант: const char* Ok() { return "Ok"; } int main() { const char* ok = "Ok"; } Есть ли гарантия, что у них один и тот же адрес, т.е. могу ли я написать следующий код?Я слышал, что GNU C ++ оптимизирует строки, чтобы у них был оди...

2
голосов
3ответов
2900 просмотров

Один файл / класс для хранения констант в ASP.NET

У меня есть веб-приложение ASP.NET, содержащее более 100 страниц. На каждой странице используются некоторые общие значения (например, текущий курс доллара США). Их можно изменить в любое время. Теперь я хочу сохранить это значение в одном файле, чтобы я мог изменить только ее в любое время, чтоб...

6
голосов
2ответов
751 просмотров

PHP security: store connection details in constants or private properties?

I was wondering if it's better to store connection variables as constants (because they can't be changed) or as private properties (because they can't be viewed). My apologies to all those who reel in horror at my lack of security nous...