Re[4]: Регистронезависимый C++
От: Аноним  
Дата: 24.05.05 13:11
Оценка: :))) :))) :))) :))) :))) :))) :))) :))) :))
Здравствуйте, Nazik, Вы писали:

N>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек".


А комбинаторика — это что такое?
Re[5]: Регистронезависимый C++
От: _DAle_ Беларусь  
Дата: 24.05.05 13:25
Оценка: 1 (1) +7 :))) :))) :)))
Здравствуйте, <Аноним>, Вы писали:

А>Здравствуйте, Nazik, Вы писали:


N>>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек".


А>А комбинаторика — это что такое?


Это то, что важнее и намного нужнее, чем регистронезависимый с++.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[3]: Регистронезависимый C++
От: ecco Россия  
Дата: 26.05.05 08:18
Оценка: :))) :))
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Dmi3S, Вы писали:


DS>>Здравствуйте, Аноним, Вы писали:


А>>>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>>>#define a A

А>>>#define b B
А>>>#define c C

DS>>Есть вариант чуть лучше:

DS>>
DS>>#define i j
DS>>// I whish You happy debugging
DS>>


А>ага, и вписать это в precompiled headers в какой-нибудь крупный проект — пусть твои последователи разбираются.


А>100% что никто ничего менять не будет, просто будут про это "помнить"

А>

Есть предложение:
#ifdef _DEBUG
#define i j
#else
#define j i
#endif

Re[5]: Регистронезависимый C++
От: Antikrot  
Дата: 24.05.05 13:15
Оценка: +4
Здравствуйте, Аноним, Вы писали:

N>>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек".

А>А комбинаторика — это что такое?

Это в юмор. В смысле, весь топик с самого начала...
Re[7]: Регистронезависимый C++
От: _ks_  
Дата: 24.05.05 15:43
Оценка: +2 :))
Здравствуйте, ecco, Вы писали:

E>Здравствуйте, AlexEagle, Вы писали:


AE>>а про +=, ++, *= и проч он не мечтает? я уже молчу про результат операции


E>Это он не заценил. Кстати, у них ведь есть аналоги ++ и --: функции inc() и, если не ошибаюсь, dec()...


E>А насчёт += и т.п.: не все ЦПП программеры их везде используют вместо i = i + ...; (есть примеры). Иногда эти операторы такие глюки делают, что не сразу врубисся, так вот!


Это не операторы глюки делают. А кое-кто другой.
Re[3]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 24.05.05 15:16
Оценка: :)))
Здравствуйте, yxiie, Вы писали:

Y>скорее всего он *оттуда* пришел


пусть возвращается откуда пришел, там ведь стока преимуществ перед с++:
Автор: AlexEagle
Дата: 18.02.05
Re: Регистронезависимый C++
От: Dmi3S Россия http://dmi3s.blogspot.com/
Дата: 24.05.05 18:00
Оценка: :)))
Здравствуйте, Аноним, Вы писали:

А>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>#define a A

А>#define b B
А>#define c C

Есть вариант чуть лучше:
#define i j
// I whish You happy debugging
Re: Регистронезависимый C++
От: LuciferMoscow Россия  
Дата: 24.05.05 13:02
Оценка: +1 :)
Здравствуйте, Аноним, Вы писали:

А>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>#define a A

А>#define b B
А>#define c C

А>.....



А>Чтобы можно было так писать PRINTF("haha");

Единственное применение — задолбать того кто после тебя будет ЭТО править
Re[15]: Регистронезависимый C++
От: DK3981 Россия  
Дата: 26.05.05 11:14
Оценка: 1 (1)
Здравствуйте, AlexEagle, Вы писали:

AE>Здравствуйте, tinytjan, Вы писали:


T>>Между прочим на олимпиадах много народу пишет именно на паскале.


AE>Ну правильно, дети вначале на трехколесном учатся ездить а потом на мацацикле


Не совсем. На Паскале/Дельфи труднее сделать плохозаметную ошибку, а цена ошибки на олимпиаде (особенно на ACM'овских) весьма высока.
... << RSDN@Work 1.1.3 stable >>
Re[4]: Регистронезависимый C++
От: Schade Россия  
Дата: 24.05.05 13:11
Оценка: +1
Здравствуйте, Nazik, Вы писали:

N>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек". Как бы компилятор у тебя не подавился!!!


А>>#define aa AA


А если еще учесть, что нужно в том числе
#define Aa a
#define aA a

#define PrINtF printf


То останется только один вопрос: где взять такой винт, на который поместится такой .h-ник
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Re[4]: Регистронезависимый C++
От: yxiie Украина www.enkord.com
Дата: 24.05.05 15:05
Оценка: :)
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>(в преддверии к переносу в "юмор")

ГВ>Да, ещё нужно заменить { } на begin/end. Э.. вернее, на BEGIN/Begin и END/End

ГВ>Кстати, когда-то так делали отдельные любители. Только для С.


я когда только с паскаля переходил, меня тоже такие мысли посещали
... << RSDN@Home 1.1.3 stable >>
Re[11]: Регистронезависимый C++
От: tinytjan  
Дата: 26.05.05 09:38
Оценка: -1
Здравствуйте, moudrick, Вы писали:

M>Здравствуйте, tinytjan, Вы писали:


T>>Здравствуйте, Vamp, Вы писали:



M>>>>inc() и dec() — это, как справедливо отмечено, не операторы, а ФУНКЦИИ (подпрограммы)

V>>>А в чем разница?

T>>Не функции а процедуры (которые войд) -- они значение не возвращают.

T>>Поэтому при написании while ( dec(i) ) — начнется ругань -- типа тип выражения д.б. boolean.

M>Да? Тогда все даже хуже, чем я думал...

M>Компайцлер magic — хорошо. Нет накладных расходов.
M>Но... значение то в регистре можно вернуть для дальнейшего использования в большом выражении.

M>Да и тогда полного счастья все равно не будет.

M>Ибо для использования в выражении в С есть префиксная форма и постфиксная.

И тем не менее я не знаю кода написанного на c++, который нельзя былобы написать на Делфи. Только с бОльшими трудозатратами.
Поправьте если я неправ.

З.Ы. Не перерастет ли это в очередную священную войну?
Re[10]: Регистронезависимый C++
От: Кодт Россия  
Дата: 28.05.05 21:01
Оценка: :)
Здравствуйте, Sinclair, Вы писали:

S>Здравствуйте, llirik, Вы писали:

L>>выглядят как функции, определены в System, так что практически встроены в язык. В связи с последним допустимо, думаю, считать операторами.
S>Более точно этот раздел называется functions requiring compiler magic

Ну, inc/dec — это всего лишь intrinsic functions, такого добра и в С/С++ хватает (например, чтение-запись портов inp(), outp(), да и strlen() может быть запросто).
А вот по-настоящему compiler magic — это паскалевские процедуры writeln, readln и особенно exit.
Перекуём баги на фичи!
Re[4]: Регистронезависимый C++
От: Nose Россия  
Дата: 09.07.05 16:29
Оценка: +1
Здравствуйте, ecco, Вы писали:

E>Есть предложение:

E>
E>#ifdef _DEBUG
E>#define i j
E>#else
E>#define j i
E>#endif
E>




Но гораздо коварней будет вот так:

 #ifndef _DEBUG
 #define i j
 #endif
... << RSDN@Home 1.1.4 stable rev. 510>>
Re[4]: Регистронезависимый C++
От: Vi2 Удмуртия http://www.adem.ru
Дата: 11.07.05 07:54
Оценка: :)
Здравствуйте, ecco, Вы писали:

E>Есть предложение:

E>#ifdef _DEBUG
E>#define i j
E>#else
E>#define j i
E>#endif

Лучше так:
#ifdef _DEBUG
    #undef _DEBUG
#else
    #define _DEBUG
#endif
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
Регистронезависимый C++
От: Аноним  
Дата: 24.05.05 12:14
Оценка:
Как вы думаете имеет ли какое-либо практическое применение такой ашничек:

#define a A
#define b B
#define c C

.....


Чтобы можно было так писать PRINTF("haha");


24.05.05 19:34: Перенесено из 'C/C++'
Re: Регистронезависимый C++
От: Анатолий Широков СССР  
Дата: 24.05.05 12:18
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>#define a A

А>#define b B
А>#define c C

А>.....


Этот "ашничек" не поможет написать PRINTF("haha") — PRINTF — undeclared identifier.
Re: Регистронезависимый C++
От: _DAle_ Беларусь  
Дата: 24.05.05 12:21
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>#define a A

А>#define b B
А>#define c C

А>.....



А>Чтобы можно было так писать PRINTF("haha");


А ты попробуй напиши
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[2]: Регистронезависимый C++
От: Аноним  
Дата: 24.05.05 12:58
Оценка:
Здравствуйте, Анатолий Широков, Вы писали:

АШ>Здравствуйте, Аноним, Вы писали:


А>>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>>#define a A

А>>#define b B
А>>#define c C

А>>.....


АШ>Этот "ашничек" не поможет написать PRINTF("haha") — PRINTF — undeclared identifier.


Последняя строка не
#define z Z
Далее идет
#define aa AA
и.т.д

в том числе и
#define printf PRINTF
Re[3]: Регистронезависимый C++
От: Nazik Россия  
Дата: 24.05.05 13:00
Оценка:
Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек". Как бы компилятор у тебя не подавился!!!

Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Анатолий Широков, Вы писали:


АШ>>Здравствуйте, Аноним, Вы писали:


А>>>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>>>#define a A

А>>>#define b B
А>>>#define c C

А>>>.....


АШ>>Этот "ашничек" не поможет написать PRINTF("haha") — PRINTF — undeclared identifier.


А>Последняя строка не

А>#define z Z
А>Далее идет
А>#define aa AA
А>и.т.д

А>в том числе и

А>#define printf PRINTF
Re: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 24.05.05 13:47
Оценка:
Здравствуйте, Аноним, Вы писали:

Если тебе не нравится регистрозависимость языка программирования, то хидеры тебе не помогут, но зато может быть поможет переход на программирование в Делфи...
Re[2]: Регистронезависимый C++
От: yxiie Украина www.enkord.com
Дата: 24.05.05 13:58
Оценка:
Здравствуйте, AlexEagle, Вы писали:

AE>Здравствуйте, Аноним, Вы писали:


AE>Если тебе не нравится регистрозависимость языка программирования, то хидеры тебе не помогут, но зато может быть поможет переход на программирование в Делфи...


скорее всего он *оттуда* пришел
... << RSDN@Home 1.1.3 stable >>
Re[3]: Регистронезависимый C++
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 24.05.05 14:53
Оценка:
Здравствуйте, yxiie, Вы писали:

Y>Здравствуйте, AlexEagle, Вы писали:


AE>>Здравствуйте, Аноним, Вы писали:


AE>>Если тебе не нравится регистрозависимость языка программирования, то хидеры тебе не помогут, но зато может быть поможет переход на программирование в Делфи...


Y>скорее всего он *оттуда* пришел


(в преддверии к переносу в "юмор")
Да, ещё нужно заменить { } на begin/end. Э.. вернее, на BEGIN/Begin и END/End

Кстати, когда-то так делали отдельные любители. Только для С.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[4]: Регистронезависимый C++
От: ecco Россия  
Дата: 24.05.05 15:16
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Да, ещё нужно заменить { } на begin/end. Э.. вернее, на BEGIN/Begin и END/End

ГВ>Кстати, когда-то так делали отдельные любители. Только для С.

Ха-ха, ирония судьбы: знакомый программер на Delphi мечтает чтоб вместо begin/end были { и }, а то типа печатать долго...
Re[5]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 24.05.05 15:18
Оценка:
Здравствуйте, ecco, Вы писали:

E>Здравствуйте, Геннадий Васильев, Вы писали:


ГВ>>Да, ещё нужно заменить { } на begin/end. Э.. вернее, на BEGIN/Begin и END/End

ГВ>>Кстати, когда-то так делали отдельные любители. Только для С.

E>Ха-ха, ирония судьбы: знакомый программер на Delphi мечтает чтоб вместо begin/end были { и }, а то типа печатать долго...


а про +=, ++, *= и проч он не мечтает? я уже молчу про результат операции
Re[6]: Регистронезависимый C++
От: ecco Россия  
Дата: 24.05.05 15:35
Оценка:
Здравствуйте, AlexEagle, Вы писали:

AE>а про +=, ++, *= и проч он не мечтает? я уже молчу про результат операции


Это он не заценил. Кстати, у них ведь есть аналоги ++ и --: функции inc() и, если не ошибаюсь, dec()...

А насчёт += и т.п.: не все ЦПП программеры их везде используют вместо i = i + ...; (есть примеры). Иногда эти операторы такие глюки делают, что не сразу врубисся, так вот!
Re[7]: Регистронезависимый C++
От: ecco Россия  
Дата: 24.05.05 15:40
Оценка:
Ну вот, дошутились
Re[7]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 24.05.05 16:52
Оценка:
Здравствуйте, ecco, Вы писали:

E>Это он не заценил. Кстати, у них ведь есть аналоги ++ и --: функции inc() и, если не ошибаюсь, dec()...


Ага, аналоги, типа while( Dec( i ) ) можно написать
Re[4]: Регистронезависимый C++
От: Аноним  
Дата: 24.05.05 17:42
Оценка:
Здравствуйте, Nazik, Вы писали:

N>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек". Как бы компилятор у тебя не подавился!!!


предлагаю такой вариант — проект писать с использованием этого хидера,
заказчикам отдавать без него

типа, обфускатор
Re[7]: Регистронезависимый C++
От: moudrick Россия http://community.moudrick.net/
Дата: 25.05.05 16:17
Оценка:
Здравствуйте, ecco, Вы писали:

E>Здравствуйте, AlexEagle, Вы писали:


AE>>а про +=, ++, *= и проч он не мечтает? я уже молчу про результат операции


E>Это он не заценил. Кстати, у них ведь есть аналоги ++ и --: функции inc() и, если не ошибаюсь, dec()...


E>А насчёт += и т.п.: не все ЦПП программеры их везде используют вместо i = i + ...; (есть примеры). Иногда эти операторы такие глюки делают, что не сразу врубисся, так вот!


inc() и dec() — это, как справедливо отмечено, не операторы, а ФУНКЦИИ (подпрограммы) со всеми вытекающими накладнами расходами.
Я понимаю, есть всякие птимизующие компиляторы, но насколько я заню, дельфино к ним не относится.
Re[8]: Регистронезависимый C++
От: Слава Шевцов Россия http://www.rentaguru.ru/
Дата: 25.05.05 16:51
Оценка:
Здравствуйте, _ks_, Вы писали:

E>>А насчёт += и т.п.: не все ЦПП программеры их везде используют вместо i = i + ...; (есть примеры). Иногда эти операторы такие глюки делают, что не сразу врубисся, так вот!

__>Это не операторы глюки делают. А кое-кто другой.

Ну почему чуть что — сразу программист?
----------------------------------------------------------------------------------------------
Rentaguru
Re[2]: Регистронезависимый C++
От: Аноним  
Дата: 25.05.05 17:10
Оценка:
Здравствуйте, Dmi3S, Вы писали:

DS>Здравствуйте, Аноним, Вы писали:


А>>Как вы думаете имеет ли какое-либо практическое применение такой ашничек:


А>>#define a A

А>>#define b B
А>>#define c C

DS>Есть вариант чуть лучше:

DS>
DS>#define i j
DS>// I whish You happy debugging
DS>


ага, и вписать это в precompiled headers в какой-нибудь крупный проект — пусть твои последователи разбираются.

100% что никто ничего менять не будет, просто будут про это "помнить"
Re[9]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 25.05.05 18:28
Оценка:
Здравствуйте, Слава Шевцов, Вы писали:

СШ>Ну почему чуть что — сразу программист?


все та же статистика...

Правда когда я программировал на реализации с++ в CA Visual Objects, там статистика была в пользу программиста, что приводило к тому что порой все ошибки просто списывались на среду разработки
Re[8]: Регистронезависимый C++
От: llirik  
Дата: 25.05.05 19:09
Оценка:
Здравствуйте, moudrick, Вы писали:

M>inc() и dec() — это, как справедливо отмечено, не операторы, а ФУНКЦИИ (подпрограммы) со всеми вытекающими накладнами расходами.


выглядят как функции, определены в System, так что практически встроены в язык. В связи с последним допустимо, думаю, считать операторами.

M>Я понимаю, есть всякие птимизующие компиляторы, но насколько я заню, дельфино к ним не относится.


слишком ты критичен к делфи, скорее предубежден . Никаких накладных расходов:

inc(1) есть просто inc eax, 1 к примеру (ну и где тут накладные расходы)

посмотри на генерируемый код для инструкции case, разве там плохая оптимизация?
... << RSDN@Home 1.1.4 beta 7 rev. 454>>
Мне твоя Москва нравится, и обратно в Россию я не вернусь! (с) мыльная о.
Re[9]: Регистронезависимый C++
От: Sinclair Россия https://github.com/evilguest/
Дата: 26.05.05 06:19
Оценка:
Здравствуйте, llirik, Вы писали:
L>выглядят как функции, определены в System, так что практически встроены в язык. В связи с последним допустимо, думаю, считать операторами.
Более точно этот раздел называется functions requiring compiler magic
... << RSDN@Home 1.1.4 beta 5 rev. 395>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[8]: Регистронезависимый C++
От: Vamp Россия  
Дата: 26.05.05 08:04
Оценка:
M>inc() и dec() — это, как справедливо отмечено, не операторы, а ФУНКЦИИ (подпрограммы)
А в чем разница?
Да здравствует мыло душистое и веревка пушистая.
Re[9]: Регистронезависимый C++
От: tinytjan  
Дата: 26.05.05 08:16
Оценка:
Здравствуйте, Vamp, Вы писали:


M>>inc() и dec() — это, как справедливо отмечено, не операторы, а ФУНКЦИИ (подпрограммы)

V>А в чем разница?

Не функции а процедуры (которые войд) -- они значение не возвращают.
Поэтому при написании while ( dec(i) ) — начнется ругань -- типа тип выражения д.б. boolean.
Re[5]: Регистронезависимый C++
От: xtile  
Дата: 26.05.05 08:27
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Nazik, Вы писали:


N>>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек". Как бы компилятор у тебя не подавился!!!


А>предлагаю такой вариант — проект писать с использованием этого хидера,

А>заказчикам отдавать без него

А>типа, обфускатор


Какой-такой обфускатор ? Лечится скриптом из 2х строк.
Re[10]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 26.05.05 08:31
Оценка:
Здравствуйте, tinytjan, Вы писали:

T>Здравствуйте, Vamp, Вы писали:



M>>>inc() и dec() — это, как справедливо отмечено, не операторы, а ФУНКЦИИ (подпрограммы)

V>>А в чем разница?

T>Не функции а процедуры (которые войд) -- они значение не возвращают.


К сожалению это справедливо для всех небулевых операторов паскаля Поэтому в данном случае разница между dec и оператором чисто формальная (операторы как правило обозначаются небуквами, ну кроме is, in, and, not и проч)
Re[4]: Регистронезависимый C++
От: tinytjan  
Дата: 26.05.05 08:43
Оценка:
Здравствуйте, Nazik, Вы писали:

N>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек". Как бы компилятор у тебя не подавился!!!

{...}

От себя добавлю
Если в коде будет хотябы одна переменная длиной 20, то
количество вариантов ее записи будет равно 2^20

длина строки определения
#define Abcdefghijklmnopqrst abcdefghijklmnopqrst равна 50 символов
Соответственно при описании в ашке только этой переменной ашка выйдет больше чем 50 метров!!!!

так что дефайны здесть не помощник.
Re[4]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 26.05.05 08:50
Оценка:
Здравствуйте, ecco, Вы писали:

E>Есть предложение:

E>
E>#ifdef _DEBUG
E>#define i j
E>#else
E>#define j i
E>#endif
E>



Вот это талант, вот это полет мысли, гигант ! Уважаю

Но для тех кто хочет добиться регистронезависимости на с++ могу предложить CA Visual Objects.... там кстати вышеописанный код дефайнов и много другого прекрасного, рандомного уже встроены в систему

как советует мой коллега, на линуксе в компайлер с++ можно добавить UPPERCASE при синтаксическом разборе — вот тут уж что-то да получится
Re[10]: Регистронезависимый C++
От: moudrick Россия http://community.moudrick.net/
Дата: 26.05.05 09:30
Оценка:
Здравствуйте, tinytjan, Вы писали:

T>Здравствуйте, Vamp, Вы писали:



M>>>inc() и dec() — это, как справедливо отмечено, не операторы, а ФУНКЦИИ (подпрограммы)

V>>А в чем разница?

T>Не функции а процедуры (которые войд) -- они значение не возвращают.

T>Поэтому при написании while ( dec(i) ) — начнется ругань -- типа тип выражения д.б. boolean.

Да? Тогда все даже хуже, чем я думал...
Компайцлер magic — хорошо. Нет накладных расходов.
Но... значение то в регистре можно вернуть для дальнейшего использования в большом выражении.

Да и тогда полного счастья все равно не будет.
Ибо для использования в выражении в С есть префиксная форма и постфиксная.
Re[12]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 26.05.05 09:47
Оценка:
Здравствуйте, tinytjan, Вы писали:

T>И тем не менее я не знаю кода написанного на c++, который нельзя былобы написать на Делфи. Только с бОльшими трудозатратами.

T>Поправьте если я неправ.

Дальше лучше — я не знаю такого кода на с++ который нельзя было бы переписать на асме (вариант, на машинных кодах ). Про трудозатраты молчу.

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

T>З.Ы. Не перерастет ли это в очередную священную войну?


Там и так мусора хватает... А из юмора по-моему еще никто не уходил
Re[5]: Регистронезависимый C++
От: MShura  
Дата: 26.05.05 09:52
Оценка:
Здравствуйте, tinytjan, Вы писали:

T>Здравствуйте, Nazik, Вы писали:


N>>Теперь вспомни комбинаторику и посчитай какого размера будет этот "ашничек". Как бы компилятор у тебя не подавился!!!

T>{...}

T>От себя добавлю

T>Если в коде будет хотябы одна переменная длиной 20, то
T>количество вариантов ее записи будет равно 2^20

Что то не так с комбинаторикой
Английских символов 27, плюс 10 символов цифр, плюс другие символы, в итоге как минимум 37.
С учетом регистра 37+20 = 57.
Переменную из 20 символов можна записать 57^20 способов
Re[12]: Регистронезависимый C++
От: moudrick Россия http://community.moudrick.net/
Дата: 26.05.05 09:53
Оценка:
T>И тем не менее я не знаю кода написанного на c++, который нельзя былобы написать на Делфи. Только с бОльшими трудозатратами.
T>Поправьте если я неправ.
T>З.Ы. Не перерастет ли это в очередную священную войну?

Не, не перерастет. Знаешь почему?
Во-первых, посмтри, в каком форуме мы находимся. :-D
Во-вторых, ты не указал, где больше будет трудозатрат — на дельфи или на сях.
пооэтому щас пойдет 2 ветки —
одна про то, почему на дельфи трудозатраты будут меньше,
другая про то, почему
и обе будут соглашаться с твоей фразой о различии величины трудозатрат ;-D

----
"Все суета и асимметричный дуализм языкового знака."
(c) Белое Безмозглое "Между двух стульев" Клюев &&over (c) Фердинанд де Соссюр.
Re[6]: Регистронезависимый C++
От: MShura  
Дата: 26.05.05 09:56
Оценка:
Слегка ошибся
С учетом регистра 37+27 = 64.
Переменную из 20 символов можна записать 64^20 способов
Re[13]: Регистронезависимый C++
От: tinytjan  
Дата: 26.05.05 10:00
Оценка:
Здравствуйте, AlexEagle, Вы писали:

AE>Здравствуйте, tinytjan, Вы писали:


T>>И тем не менее я не знаю кода написанного на c++, который нельзя былобы написать на Делфи. Только с бОльшими трудозатратами.

T>>Поправьте если я неправ.

AE>Дальше лучше — я не знаю такого кода на с++ который нельзя было бы переписать на асме (вариант, на машинных кодах ). Про трудозатраты молчу.


Затраты больше процентов на 50, ну в крайнем случае на 100.
Когда мне надо написать что-нить простенькое получасовое, я обычно пишу на делфе.
Между прочим на олимпиадах много народу пишет именно на паскале.

AE>Но ведь в чем преимущество — в низких трдозатратах и в гибкости используемого инструментария для выбранной задачи... Именно поэтому разные задачи решают разными инструментальными средствами


А я и не спорю

T>>З.Ы. Не перерастет ли это в очередную священную войну?


AE>Там и так мусора хватает... А из юмора по-моему еще никто не уходил


2аффтор: ИМХО различимость регистров программированию на с++ совсем не мешает, даже наоборот, приучает к нормальному оформлению кода.
Re[7]: Регистронезависимый C++
От: tinytjan  
Дата: 26.05.05 10:09
Оценка:
Здравствуйте, MShura, Вы писали:

MS>Слегка ошибся


Не думаю, с математикой я вроде дружу

MS>С учетом регистра 37+27 = 64.

MS>Переменную из 20 символов можна записать 64^20 способов


Я так понимаю надо поподробнее:
#define abC abc
#define aBc abc
#define aBC abc
#define Abc abc
#define AbC abc
#define ABc abc
#define ABC abc


для слова длиной 3 надо 2^3 — 1

Трохан обшибся, надо не 2^20 а 2^20 — 1 вариантов -- саму переменную дефайнить не надо
Re[13]: Регистронезависимый C++
От: tinytjan  
Дата: 26.05.05 10:11
Оценка:
Здравствуйте, moudrick, Вы писали:


T>>И тем не менее я не знаю кода написанного на c++, который нельзя былобы написать на Делфи. Только с бОльшими трудозатратами.

T>>Поправьте если я неправ.
T>>З.Ы. Не перерастет ли это в очередную священную войну?

M>Не, не перерастет. Знаешь почему?

M>Во-первых, посмтри, в каком форуме мы находимся. :-D
M>Во-вторых, ты не указал, где больше будет трудозатрат — на дельфи или на сях.
M> пооэтому щас пойдет 2 ветки —
M> одна про то, почему на дельфи трудозатраты будут меньше,
M> другая про то, почему
M> и обе будут соглашаться с твоей фразой о различии величины трудозатрат ;-D

M>----

M>"Все суета и асимметричный дуализм языкового знака."
M>(c) Белое Безмозглое "Между двух стульев" Клюев &&over (c) Фердинанд де Соссюр.

Просто может получиться так, что беседа о регистронезависимом с++ плавно перетечет в спор Delphi vs C++
Re[14]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 26.05.05 10:34
Оценка:
Здравствуйте, tinytjan, Вы писали:

T>Между прочим на олимпиадах много народу пишет именно на паскале.


Ну правильно, дети вначале на трехколесном учатся ездить а потом на мацацикле

T>2аффтор: ИМХО различимость регистров программированию на с++ совсем не мешает, даже наоборот, приучает к нормальному оформлению кода.


Не вопрос! Согласен на все 100! Но я просто пытался предложить решение на заданный вопрос..
Re[16]: Регистронезависимый C++
От: AlexEagle Украина http://www.vik.oil
Дата: 26.05.05 12:02
Оценка:
Здравствуйте, DK3981, Вы писали:

AE>>Ну правильно, дети вначале на трехколесном учатся ездить а потом на мацацикле


DK>Не совсем. На Паскале/Дельфи труднее сделать плохозаметную ошибку, а цена ошибки на олимпиаде (особенно на ACM'овских) весьма высока.


Смотря на чем до этого программировал... Я например регулярно после с++ наступаю на грабли с inherited Destroy
Re[8]: Регистронезависимый C++
От: MShura  
Дата: 26.05.05 12:06
Оценка:
MS>>С учетом регистра 37+27 = 64.
MS>>Переменную из 20 символов можна записать 64^20 способов


T>Я так понимаю надо поподробнее:

T>
T>#define abC abc
T>#define aBc abc
T>#define aBC abc
T>#define Abc abc
T>#define AbC abc
T>#define ABc abc
T>#define ABC abc
T>


T>для слова длиной 3 надо 2^3 — 1


T>Трохан обшибся, надо не 2^20 а 2^20 — 1 вариантов -- саму переменную дефайнить не надо


Да, я написал не то.
Почему то думал про другую задачу.
Re[17]: Регистронезависимый C++
От: tinytjan  
Дата: 26.05.05 12:23
Оценка:
Здравствуйте, AlexEagle, Вы писали:

AE>Здравствуйте, DK3981, Вы писали:


AE>>>Ну правильно, дети вначале на трехколесном учатся ездить а потом на мацацикле


DK>>Не совсем. На Паскале/Дельфи труднее сделать плохозаметную ошибку, а цена ошибки на олимпиаде (особенно на ACM'овских) весьма высока.


AE>Смотря на чем до этого программировал... Я например регулярно после с++ наступаю на грабли с inherited Destroy


Я думаю, на олимпиаде у тя подобных проблем не возникнет
И еще один довод в пользу того, что в некоторых сферах применения (на тех же олимпадах) Object pascal рулит --
он намного легче чем С++. Хотя согласен некоторые тривиальные в С++ вещи на паскале надо писать через одно общеизвестное место.
Re[16]: Регистронезависимый C++
От: the_void Швейцария  
Дата: 27.05.05 18:08
Оценка:
Здравствуйте, DK3981, Вы писали:

DK>Не совсем. На Паскале/Дельфи труднее сделать плохозаметную ошибку, а цена ошибки на олимпиаде (особенно на ACM'овских) весьма высока.


И тем не менее, на мировых финалах ACM ICPC от Паскаля уже отказываются.
Головоломные констуркции языка на олимпиадах не используются, так что тут, имхо, все решает практика — кому на чем удобнее. Мы писали (и будем писать, если повезет ) на C++ — и никаких проблем со стороны языка не испытывали.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Re[11]: Регистронезависимый C++
От: Sinclair Россия https://github.com/evilguest/
Дата: 30.05.05 03:32
Оценка:
Здравствуйте, Кодт, Вы писали:
К>Ну, inc/dec — это всего лишь intrinsic functions, такого добра и в С/С++ хватает (например, чтение-запись портов inp(), outp(), да и strlen() может быть запросто).
К>А вот по-настоящему compiler magic — это паскалевские процедуры writeln, readln и особенно exit.
А как же break и continue? Вот ужо где бубен-то зарыт! Всегда хотел получить их адрес.
... << RSDN@Home 1.1.4 beta 5 rev. 395>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[12]: Регистронезависимый C++
От: Кодт Россия  
Дата: 30.05.05 08:43
Оценка:
Здравствуйте, Sinclair, Вы писали:

К>>Ну, inc/dec — это всего лишь intrinsic functions, такого добра и в С/С++ хватает (например, чтение-запись портов inp(), outp(), да и strlen() может быть запросто).

К>>А вот по-настоящему compiler magic — это паскалевские процедуры writeln, readln и особенно exit.
S>А как же break и continue? Вот ужо где бубен-то зарыт! Всегда хотел получить их адрес.

Да-да-да!
Я уже подзабыл паскаль — мне казалось, что в дельфях это уже ключевые слова; а в старом добром TP это действительно распарсивалось как процедуры без параметров.
Перекуём баги на фичи!
Re[14]: Регистронезависимый C++
От: Аноним  
Дата: 30.05.05 11:15
Оценка:
Здравствуйте, tinytjan, Вы писали:

T>Здравствуйте, AlexEagle, Вы писали:


--skip--

T>Затраты больше процентов на 50, ну в крайнем случае на 100.

T>Когда мне надо написать что-нить простенькое получасовое, я обычно пишу на делфе.
T>Между прочим на олимпиадах много народу пишет именно на паскале.

Хотел бы я посмотреть, как на базовой реализации паскаля в условиях олимпиады
(критично время, отсутствует возможность пользоваться своими старыми наработками.либами)
Вы напишете, например, программку для матричных вычислений... для больших матриц...
и для очень больших...
А возвращаясь к топику — году в 1993-м, примерно, в одной и софтпанорам был весьма
забавный хидер, после подключения которого можно было писать на C используя Великий
и Могучий в наиболее народной его версии.
Re[5]: Регистронезависимый C++
От: ecco Россия  
Дата: 11.07.05 07:35
Оценка:
Здравствуйте, Nose, Вы писали:

N> Но гораздо коварней будет вот так:


N>
N> #ifndef _DEBUG
N> #define i j
N> #endif
N>


Тогда ещё коварнее и непонятнее:
#ifndef _DEBUG
#define i (++i)
#define j (--j)
#endif

... << RSDN@Home 1.1.4 beta 7 rev. 447>>
Re[6]: Регистронезависимый C++
От: ecco Россия  
Дата: 11.07.05 07:39
Оценка:
Здравствуйте, ecco, Вы писали:

E>Тогда ещё коварнее и непонятнее:

E>
E>#ifndef _DEBUG
E>#define i (++i)
E>#define j (--j)
E>#endif
E>

E>

Ой блин, гоню. Определять то как?
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.