Форум программистов, компьютерный форум CyberForum.ru

Вычисляемые константы - C++

Восстановить пароль Регистрация
 
defer
秘密
 Аватар для defer
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
20.06.2012, 07:53     Вычисляемые константы #1
Можно ли сделать так, чтобы сначала вычислить, а затем сделать константой?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2012, 07:53     Вычисляемые константы
Посмотрите здесь:

символьные константы C++
Константы, вычисление... C++
Стринговые константы в С++ C++
C++ Экспоненциальные Константы
C++ Определение константы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Root2x
 Аватар для Root2x
12 / 12 / 0
Регистрация: 21.05.2012
Сообщений: 52
20.06.2012, 13:55     Вычисляемые константы #2
Слушай, попробуй так, по крайней мере компилятор VStudio 10 успешно это пережевывает:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
    int A = 0;
 
    cin>> A;
    const int B = A;
    cout<< B;
 
    _getch();
    return 0;
}
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
20.06.2012, 14:01     Вычисляемые константы #3
Root2x, Ага. А теперь попробуй массив создать статический из такой "константы".
Root2x
 Аватар для Root2x
12 / 12 / 0
Регистрация: 21.05.2012
Сообщений: 52
20.06.2012, 14:04     Вычисляемые константы #4
Да, не получится, но ведь defer, не указывал это в условии задачи =D
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
20.06.2012, 14:08     Вычисляемые константы #5
ForEveR, попробовал, работает.
правда сам не понимаю почему это работает
Миниатюры
Вычисляемые константы  
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
20.06.2012, 14:10     Вычисляемые константы #6
sandye51, gcc подозреваю?
Там и так отработает.
C++
1
2
3
4
5
6
7
#include <iostream>
 
int main()
{
   int n = 5;
   int array[n];
}
Однако.
Bash
1
2
3
4
forever@pterois:~/My_pro1/cpp_pro$ g++ -o new new.cpp -pedantic -Werror
new.cpp: В функции «int main()»:
new.cpp:6:15: ошибка: ISO C++ запрещает массив переменного размера «array» [-Werror=vla]
cc1plus: all warnings being treated as errors
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
20.06.2012, 14:11     Вычисляемые константы #7
ForEveR, нет. Apple LLVM complier 3.1
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
20.06.2012, 14:14     Вычисляемые константы #8
sandye51, А что с pedantic скажет?
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
20.06.2012, 14:22     Вычисляемые константы #9
Код
main.cpp: In function ‘int main()’:
main.cpp:11: error: ISO C++ forbids variable-size array ‘array1’
main.cpp:18: error: ISO C++ forbids variable-size array ‘array2’
Ilyas-iMac:test sandye51$
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2012, 16:49     Вычисляемые константы
Еще ссылки по теме:

константы в классах C++
C++ OpenGL. Передать в процедуру рисования Draw коэффициенты прямой, вычисляемые в другой процедуре
C++ Константы и C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
20.06.2012, 16:49     Вычисляемые константы #10
MinGW тоже "хавает" не константы как размер массива.
Yandex
Объявления
20.06.2012, 16:49     Вычисляемые константы
Ответ Создать тему
Опции темы

Текущее время: 00:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru