- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
template <int N>
void Ololo ()
{
var
i : integer;
begin
for i := 0 to N-1 do begin
WriteLn(i, ' ');
end;
end;
}
int main ()
{
return 0;
}
Compiling...
Test.cpp
Linking...
Build log was saved at "file://c:\Users\TarasB\Documents\Visual Studio Projects\Test\Debug\BuildLog.htm"
Test - 0 error(s), 0 warning(s)
---------------------- Done ----------------------
Build: 1 succeeded, 0 failed, 0 skipped
LispGovno 15.01.2014 10:52 # −1
TarasB 15.01.2014 10:53 # 0
defecate-plusplus 15.01.2014 11:09 # 0
а integer тоже в макрос
roman-kashitsyn 15.01.2014 10:56 # +3
TarasB 15.01.2014 11:09 # +1
defecate-plusplus 15.01.2014 11:12 # +4
у так это известная шняга микрософта
не только в 2003
сколько раз заёбывали внезапные ошибки компиляции в своем коде давно запущенных проектов, написанном много времени назад и только вдруг пригодившемся
roman-kashitsyn 15.01.2014 11:33 # +3
bormand 15.01.2014 11:36 # +3
defecate-plusplus 15.01.2014 11:44 # +3
вместо двойного прохода, как в стандарте написано, используется один в момент использования
это в т.ч. позволяет в МС не писать this-> для методов, вызываемых внутри текущего шаблонного метода
но когда пишешь кросс-платформенный код, чтобы и гцц удовлетворить, последнее "преимущество" уже не стоит ни гроша
LispGovno 16.01.2014 13:19 # −1
Буду тебя хедхантерить.
http://megaserm.ru/content/images/vkontakte-ban-akkaunta.jpg
defecate-plusplus 16.01.2014 13:26 # −1
Lure Of Chaos 16.01.2014 17:28 # 0
LispGovno 15.01.2014 13:15 # 0
> у так это известная шняга микрософта
Так этот шаблон же не должен, если не используется. Причем тут майкрософт?
kegdan 15.01.2014 13:31 # +3
defecate-plusplus 15.01.2014 13:43 # +2
в двух словах - компилятор, когда разбирает шаблонную функцию, может проверить синтаксис, выделить names non-dependent on the template parameters и проверить их - т.к. эти сущности обязаны как бы быть доступны и валидны независимо от того, будет ли инстанциироваться шаблон + они не должны менять смысл и компилируемость шаблона (affects whether or not the program is well-formed or affects the semantics of the program) после инстанциирования (думаю, поэтому гцц вечно жалуется на отсутствие this->)
это первый проход
и в момент инстанциирования компилятору остается разобраться уже с dependent сущностями
это второй проход
микрософт не парится с двумя проходами на разных этапах разбора кода, и парсит и анализирует шаблон уже в последний момент - когда его используют
возможно, эксплуатируя нестрогие требования в стандарте (типа формулировок Exactly when these errors are diagnosed is a quality of implementation issue. или may be diagnosed even is not instantiated)
anonimb84a2f6fd141 15.01.2014 20:42 # −1
TarasB 15.01.2014 20:50 # +1
3.14159265 16.01.2014 01:37 # +2
Это в сишке будут такие говношаблоны - на дефайнах. И называются они женерики.
Крестошаблоны - уникальное измышление сиплюструпа, по сути отдельный язык.
3.14159265 16.01.2014 01:40 # +3
guest 17.01.2014 09:24 # +8
Обязательно нужно написать энтерпретатор крестов имеющий бесконечное кол-во дифайнов. Его начнут использовать в написании скриптов, появится рефлексия, быстрая не компиляция, функция высшего порядка, паттерн-матчинг, даже можно будет узнать тип переменной во время выполнения, и о боже, модули!!!
HTML 5 больше не понадобится. Его заменит интерпретируемый в браузере и на сервере одновременно С++55. Макаки начнут использовать шаблоны в качестве шаблонизатора страниц. В шаблоны добавят сборщик мусора и они больше не будут потреблять много памяти и тормозить, что можно будет запускать программы во время не компиляции, связываться по сети с сервером компиляции, содержащим необходимые таблицы и базы данных для кодогенерации.
Это мир возможностей. Это мир искусственного интеллекта. Буквально через 2 года компилятор вберет в себя столько возможностей, что уже ни один человек не сможет уследить за развитием компилятора и компилятор начнет писать сам себя. Благо возможностей у него будет столько, что это станет возможным. Он начнет использовать данные об алгоритмах из Интернета во время кодогенерации для самомодификации. Алгоритм Хо-Кашьяпа начнет давать невероятные результаты и уже через год искусственный интеллект Skynet забухает.
1024-- 17.01.2014 10:26 # 0
guest 17.01.2014 11:39 # +8
Удалили.
Stertor 17.01.2014 16:17 # +1
bormand 17.01.2014 16:32 # 0
guest 17.01.2014 19:17 # +2
3.14159265 17.01.2014 20:04 # +1
>>я тебе как лиспГовно говорю
LispGovno 42 минуты назад #
Почему ты так решил? Это был я.
guest 30 минут назад #
Не путай Меня и Борманда. Черт, залогинится забыл.
Судя по этому ЛиспГумно писало под гостем, залогинилось, и снова разлогинилось.
Зачем?
А между этими постами проскочил пост борманда в другом треде.
guest 17.01.2014 21:01 # 0
anonimb84a2f6fd141 17.01.2014 21:20 # −2
3.14159265 17.01.2014 22:45 # +2
>что под у четкой гостя мог писать я.
Уууу чёткой.
Stertor 17.01.2014 22:47 # −2
TarasB 17.01.2014 18:47 # +1
LispGovno 17.01.2014 19:20 # +1
Stertor 17.01.2014 19:29 # +1
guest 17.01.2014 19:31 # 0
3.14159265 17.01.2014 20:02 # +1
перелогинится
[fixed]