Программисты C++




Правила конференции





 

Никас <<Троцкий>> Кондаков

пише?20 декабря 2006 в 3:45

в вузе меня напрягают фортраном и матлабом... отстой

Дмитрий Медвинский

пише?20 декабря 2006 в 14:06

А у меня Паскаль - мастдай.

Йа Хо-Хо Катушечко

пише?20 декабря 2006 в 21:35

В вузе C++, на работе он же, кошмар, куда деваться-то?!

Никас <<Троцкий>> Кондаков

пише?21 декабря 2006 в 5:42

мне бы ваши прблемы... пец. мне на пятницу надо 19 прог написать...

Иван Матвеев [Uzumakin Naruto]

пише?28 декабря 2006 в 18:35

С++ жжот...=))
истинный язык программирования...ИМХО

Михаил Калинин

пише?28 декабря 2006 в 18:48

Товарисч о вкусах не спорят...

Евгений .nix Вялов

пише?28 декабря 2006 в 19:35

С++, что это такое? это песня такая наверно? :)))

Евгений Гаврин

пише?29 декабря 2006 в 0:00

Какой компилятор предпочитаем госопода?)

Евгений Гаврин

пише?29 декабря 2006 в 2:56

*спустя три часа была надена опечатка)
(господа)

Евгений .nix Вялов

пише?29 декабря 2006 в 8:24

Я предпочитаю свой мОсК-это самый могучий компилятор :))

Павел wr.HunTeR Белов

пише?29 декабря 2006 в 14:49

нас стало на 1 больше! ура!
вот в унвере нас начли учить С++ ... хочу им серьёзно заняться...

Иван Матвеев [Uzumakin Naruto]

пише?29 декабря 2006 в 15:08

C++ интересная и полезная весч...

Виктор Пантелеев

пише?29 декабря 2006 в 21:20

ИМХО С++ самый лучший язык)) Вот только странно, нам в ВУЗе Си давали, а С++ нет, и не будут :-\

Никита Задириушко

пише?30 декабря 2006 в 13:57

Господа, C++ - вчерашний день, сегодня рулит C#. Могу описать все преимущества технологии .NET, хотите? :P

Иван Матвеев [Uzumakin Naruto]

пише?30 декабря 2006 в 15:41

"ИМХО С++ самый лучший язык)) Вот только странно, нам в ВУЗе Си давали, а С++ нет, и не будут :-)"

если знаешь С то поймёшь и С++

Йа Хо-Хо Катушечко

пише?30 декабря 2006 в 23:12

не хочется особо спросить но C# действительно в разы круче :)

Дмитрий Хрусталёв

пише?30 декабря 2006 в 23:18

Эй Рост, не хочется и не спрашивай, и кстати как ты сдал зачет по русскому?))

Никита Задириушко

пише?31 декабря 2006 в 0:21

"если знаешь С то поймёшь и С++"
не согласен. Это совершенно разные концепции, разные подходы к программированию, разный стиль мышления в конце концов!

Иван Матвеев [Uzumakin Naruto]

пише?31 декабря 2006 в 1:27

кому как....ИМХО....

Евгений .nix Вялов

пише?31 декабря 2006 в 14:48

Надеюсь в меня камни не полетят, но очень люблю JAVA, и указателей нет как таковых :)) оч милый язык....

Иван Матвеев [Uzumakin Naruto]

пише?31 декабря 2006 в 15:58

тебе можно....

Евгений Гаврин

пише?31 декабря 2006 в 20:48

Си дот мало чем отличается от С++ - разница лишь в том что Дот - заточен под более ленивого прогера...

Алексей Тринеев

пише?3 января 2007 в 2:20

Что за Си дот? %)) Си шарп знаю, си дот нет такого =)
Я, кстати, раньше ничего кроме C++ не признавал, а джаву сначала языком для албанцев считал. Получше ее узнал - теперь обожаю. Долой рабство микрософта =)

Евгений .nix Вялов

пише?4 января 2007 в 0:23

ООО, респект единомышленнику :))

Александр Скородумов

пише?4 января 2007 в 21:09

Под си дот человек имел ввиду managed C++ - гадость еще та :)
Дот Нет заточен под другого прогера, а не под ленивого :) Честно говоря после перехода с C++ на C# нервов стало больше и пишу медленее :) так как многое, на мой взгляд, в нем через жопу

Денис Валентинович Рысцов

пише?4 января 2007 в 22:03

2 Александр Скородумов
Не согласен, managed C++ мне позволил связать Maple и TCL с C#. Да и много еще софта, который имеет C интерфейс, а так хочется его на web службы перевести и юзать, например с КПК

Александр Скородумов

пише?5 января 2007 в 2:38

Но это не оправдывает того жутко синтаксиса :) На мой взгляд просто жуть.

Денис Валентинович Рысцов

пише?5 января 2007 в 13:27

2 Александр Скородумов
Синтаксис дело привычки, а если ничто другое не позволяет связать C/С++ библиотеки с .NET'ом буду юзать MC++.

Александр Скородумов

пише?5 января 2007 в 20:14

По-мойму рациональнее учить просто другой язык, потому что здесь идеология немного другая, соотвественно и у языка должна быть другая идеология :) С++ , как мне кажется, здесь лучше использовать в виде периодических вставок (благо .Net это позволяет), а не как основный язык для написания прикладных приложений. Другой язык в данном контексте - C#. И у меня такое ощущение, что через пару лет managed C++ точно выкинут :) Но это догадки только

Денис Валентинович Рысцов

пише?5 января 2007 в 20:30

2 Александр Скородумов
В точку, MC++ только мост между прошлым и будушем. И относиться к нему надо не как языку, а как к хаку.

2 all
Немного офтопа. Кто с какими языками знаком, какие использует в работе, а какие в прогах для себя?

Денис Валентинович Рысцов

пише?5 января 2007 в 22:39

Буду первым.
Язык c# использую на работе, и по большей части дома. Про версию 1, забыл давно, на работе вторая, дома балуюсь с третьей. Универсальный язык (для любой конкретной задачи найдеться более подходящий, но хочиться знать один).
TCL использую дома в качестве скриптового языка, и на нем пишу апплеты, опять же для себя, так как необходим плагин для браузера. В зашиту могу сказать, что объектная система для TCL написана на самом TCL, прочем их несколько - в стиле smalltalk и в стиле c++
В будушем хочу побаловаться с Прологом:)

Александр Скородумов

пише?6 января 2007 в 4:26

Учусь всего лишь - начал с С++, сейчас начал ковырять C#. Всего программирую около 7 месяцев :)
Ощущения от C# - не смотря на то, что и этот язык сиподобен страшно неудобным кажется многое и страшно удобным некоторое, но все равно в большинстве своем приходится рушить огромные религиозные барьеры, так как у языка идеология чуток другая (все-таки почти полный ООП). Ну а синтаксис, с одной стороны, вещь такая - привыкнуть можно, но жутко бесят ref, out и т.д. :) все хочется звездочек понаставить.
Синтаксис - проблема временная, но Паскаль я в любом случае не буду юзать как любимый язык - эти все end, begin меня убивают :))

Дмитрий Красноруцкий

пише?6 января 2007 в 11:29

А у меня другая история. По учебе начал с C#, но потом стало жутко стремать, что на компах без .NET Framework 2.0 мои проги не идут. Поэтому совсем недавно взялся за C++. Не знаю, можно ли было на C# без .NET Framework 2.0 писать, но по крайней мере для С++ мануалов куда больше!

Кто-нибудь пишет на c++ с DirectX что-нибудь? Допустим, я захотел игрушку небольшую написать, а стандартный интерфейс win-окон меня не устраивает. Так вот, насколько сложно и резонно использовать для этих целей DirectDraw?
Пользуюсь MS Visual Studio 2005 и еще есть DirectX 9.0 SDK.

Макс Ассовский

пише?6 января 2007 в 13:35

Привет!!!! Решил вот присоединиться к вашему клану.

К прошлому сообщению:
поговаривают, что штука это хорошая (DirectX), но сделана сложно через сложные классы, OpehGL в этом смысле куда проще

Кстати, может кто-нибудь знает как в C++ организовать функцию типа eval из php? (кроме как писать самому)

Денис Валентинович Рысцов

пише?6 января 2007 в 13:56

2 Максим Ассовский
Welcome
Самый простой способ - сменить язык, eval в избытке в интерпретируемых языках (JavaScript, TCL, PHP, опять же), в общем, где среда выполнения и компилятор одно и тоже. В c++ все иначе и печальние. Но есть пара способов.
Первый. Твоя прога пишет проги на c++, компилирует (необходимо, что бы компилятор стоял на машине клиента) в dll, динамически подключает и запускает.
Второй. ASM вставки и писать в машинных кодах.
Но оба способа изврат. Лучше забить, а если такая функциональность необходимо - меняй язык на что-нибудь динамическое.

Макс Ассовский

пише?6 января 2007 в 14:18

Я где-то слышал, что можно сделать вставку в С++ код на другом языке(не на машинном), типа кусочек кода написать на JavaScript...

Вообще-то я для собственного удовольствия(ну может еще и для практики) хотел бы написать простенький графопостроитель. И все хорошо, вот только проблема с заданием произвольной функции пользователем =((((

Александр Скородумов

пише?6 января 2007 в 14:33

Вставки на ASM`e точно модно делать, а вот что касается других вставок - не уверен, по идее .Net и задумывался отчасти для того, чтобы реализовать эту идею. К тому же зачем тебе в С++ проекте использовать JavaScript? Зачен козе боян?

Алексей Васильевич Никитин

пише?7 января 2007 в 20:58

2 Дмитрий Красноруцкий: DirectDraw лучше не использовать - в нём даже документация не сростается с реализацией. Если надо сделать
2D, используй тот же Direct3D, благо, позволяет

Дмитрий Красноруцкий

пише?7 января 2007 в 23:33

2 Алексей Никитин: Спасибо за инфу! Вообще программирование - не моя специализация, но как-нить обязательно попробую с 2D справиться! После сессии может...

Йа Хо-Хо Катушечко

пише?8 января 2007 в 3:28

-> Насколько я знаю в C++ есть только inline и asm вставки. Ессно никаких джава а уж тем более скрипт.

-> Универсальным C# уж точно никогда не стал бы называть, его универсальности хватает только на управляемый код.

-> Direct3D штука клевая, правда сам я его толком не изучил. OpenGL увлек больше.

-> Для C++ видел где-то интерпретаторы C-подобного скрипт языка.

-> Паскаль как раз очень крут своими begin, end и прочей лабудой. Описаться почти невозможно. Это большой плюс, за этого его и люблю.

А продолжая оффтоп, пишу на C++ (в основном) и Delphi на работе, редко на asm'e или C#. А так для сопстного извращенного удовольствия иногда пишу на Java, OCaML, APL, MIDLetPascal (это под мобилу) и на собственном скрипт-процессоре LPL.

Денис Валентинович Рысцов

пише?12 января 2007 в 20:16

Здесь скучно, всем пока

Витольд Седышев

пише?12 января 2007 в 22:56

У кого есть исходники GSM 6.10 и наработки по аудио. Присылайте в личку ссылки или прям файлы в UUE >:-))))

Николай Белов

пише?13 января 2007 в 8:31

http://www.linux.org.ru/view-message.jsp?msgid=17301...
C++ + Python + Ruby
Что из этого получится?

Андрей Кузнецов

пише?15 января 2007 в 17:24

Вообще вставки возможны например через технологию COM. Например JScript,JavaScript и.т.п.

Олег Андреев

пише?15 января 2007 в 18:51

"C++ + Python + Ruby
Что из этого получится?"

Получится, как известно, Objective C++ ;-)

Павел wr.HunTeR Белов

пише?15 января 2007 в 20:37

Народ, может вы мне подскажете как писать программы под WinCE (Windows Mobile), в частности для смартов...
хочу простенькие проги писать на С++ для своего, например для помощи на экзаменах.
подскажите какую-нибудь документацию, или может специальный компилятор нужен или как?
плиз!

Александр Скородумов

пише?16 января 2007 в 2:51

C# + .NET framework compact - удобнее всего ... в Студии эмулятор оси есть. Можешь managed C++ юзать

Женя Мустафин

пише?18 января 2007 в 22:09

Народ, помогите! Какую курсовую можно написать по программированию? (Borland Builder 6) Может сетевую прожку, даже не знаю что.

Андрей Кузнецов

пише?19 января 2007 в 10:58

Можешь написать чат для локальной сети с наворотами, или же какую нибудь игру вроде шашек.

Алексей Моисеев

пише?22 января 2007 в 19:48

А когда напишешь чат, мне скажи. Я у тебя его попрошу.

Витольд Седышев

пише?23 января 2007 в 3:13

Я вон тут аналог сервера NNTP пишу под никсами. Правдо редко пишу очень... Но там уже многопользовтельность есть... Пока нет Message API и мыслей нет... Кому интересно пишите...

Андрей Кузнецов

пише?23 января 2007 в 16:26

А цель какая этого сервера? :)

Михаил Голуб

пише?23 января 2007 в 21:42

Совсем недавно открылась группа по интересам "Программист". Предполагается обсуждение общих вопросов программирования и проектирования. Присоединяйтесь! Нас уже 30+
groups.php?act=s&gid=912

2 Администрация: если не трудно, добавьте группу в список групп-друзей. И нам, и вам будет лучше :)

Олег Андреев

пише?28 января 2007 в 4:34

Есть кто-нибудь, кто серьезно пользовался Boost'ом?

Юрий Подгорный

пише?30 января 2007 в 23:32

Очень сильно прошу помощи. Мне это надо к четвергу. Кто сможет - ответьте плз.
Есть текстовый файл, в котором описание продуктов на складе (пишешь сам(а)). Первая графа - номер, вторая - имя, третья - тип, четвертая - значение (кол-во продуктво). Задача - Определить структурный тип, с помощью структуры найти имена продуктов, количество которых равно нулю.

Руслан Галинский

пише?31 января 2007 в 17:44

Парни, всем привет! Кульная группа. Пазрешите спор плиз: пишем движок(трёхмерный), юзаем OpenGL, вопрос - матрицы делать классами или нет(нас просто несколько и мы ровно на половину разделились, одни за то что классами медленее, а другой возражают)

Олег Андреев

пише?31 января 2007 в 19:10

Классами. Они не медленнее.

Михаил Голуб

пише?1 февраля 2007 в 9:23

Руслан, вспомните фразу, приписываемую Кнуту (правда сказал первым ее кто-то другой): Преждевременная оптимизация - корень всех зол! (Prematured optimization is a root of all evil).

Вы пишите пока, а как проблемы с быстродействием появятся, тогда и будете уже думать.

Олег Андреев

пише?1 февраля 2007 в 19:30

Кое-что про оптимизацию классов: Руслан, вспомните, для чего Страуструп затеял Cpp? Он писал софт для железа, т.е. дрова. Софт должен был быть достаточно быстрый и машинно-ориентированный. При этом, кода было много и его нужно было упорядочить. Так родился Cpp, который столь же быстр, как и Си, но при этом столь же хорошо структурирован, что и Джава (которой тогда еще не было, но так кому-то может быть понятней).

Михаил Голуб

пише?2 февраля 2007 в 9:54

ну в Буче или Страуструпе (не помню) приводились цифры до 20% медленее из-за виртуальных методов, но это было очень давно, компиляторы продвинулись за то время.

Олег Андреев

пише?2 февраля 2007 в 13:38

Да, забыл сказать, что это только из-за виртуальных методов. Вызов виртуального метода - это несколько лишних операций сложения. Т.е. вместо одного CALL, нужно найти адрес указателя на таблицу (прибавив к адресу объекта смещение таблицы) и прибавить к нему относительный адрес метода. А потом уже CALL.
Думаю, сильно продвинуться компиляторы здесь не могли.

Женя Мустафин

пише?8 февраля 2007 в 2:23

Явно не хватает форума...

Никита aka NagaN

пише?8 февраля 2007 в 14:15

Нада больше чем сто участников чтоб было, тада мона будет сдалать форум

DELETED

пише?8 февраля 2007 в 23:58

Use the Microsoft Visual C+ . That's Good!

Александр Скородумов

пише?9 февраля 2007 в 23:50

Билл Гейтс разработал язык С+ :)

Олег Андреев

пише?10 февраля 2007 в 0:08

Сиплюс - новый язык от Билла Гейтса. Он специально уволился из MS, чтобы совершенствовать его дальше. В скромной надежде когда-нибудь превзойти язык Сиплюсплюс.

Александр Скородумов

пише?10 февраля 2007 в 15:57

Между делом спешу задать один вопрос по теме :)
Есть const int arr[3] = {1,2,3};
Это означает то, что массив находится в памяти с меткой read-only и, соотвественно, мы не можем изменять данные? Вроде так.
Получается, что int* pTr = const_cast<int*>(arr); эту метку снимет?
И раз на то пошло, какого фига работает код, аля *(int*)(&arr[1])=5;
Значит, на самом деле, тот массив не записан read-only? Ведь я не вылатю с Access violation

Александр Скородумов

пише?10 февраля 2007 в 15:58

Олег Андреев, только смысл теряется :)
"Старая шутка гласит, что язык называется C+ , а не С, потому что язык был улучшен
(на что указывает инкремент), но многие продолжают использовать его как С (предыдущее
значение до инкремента). " (С) Герб Саттер

Дмитрий Широков

пише?10 февраля 2007 в 19:19

очень часто в с+ , (int*) равносильно const_cast<int*>, просто const_cast<int*>, static_cast<int*> придумали для простоты чтения, чтобы глаз в заблуждение не вводить. Может я ошибаюсь.
Народ скажите,чё надо накропать, чтобы через приложение компилятора visual c 6
отправить мыло с прикреплённым файлом? Если укажите ссылку на литературу в инете, буду очень признателен.

Александр Смаль

пише?11 февраля 2007 в 3:45

Александр Скородумов написал:
Есть const int arr[3] = {1,2,3};
Это означает то, что массив находится в памяти с меткой read-only и, соотвественно, мы не можем изменять данные? Вроде так.
Получается, что int* pTr = const_cast<int*>(arr); эту метку снимет?
И раз на то пошло, какого фига работает код, аля *(int*)(&arr[1])=5;
Значит, на самом деле, тот массив не записан read-only? Ведь я не вылатю с Access violation

Ну и что. Твой код приводит к UB. А значит, что может отлично работать или форматнуть винт. А про память с read-only меткой это ты сам себе напридумал. В Стандарте это не гарантируется. На некоторых платформах такой памяти вообще может не быть. %)

Александр Скородумов

пише?11 февраля 2007 в 13:46

Вот и мне и интересно - это стандар или причуды компилятора. Допустим, GCC вот после такого вылетает, но MSVC+ 2005 забивает и дает спокойно изменять данные.
Покурил Google - необосновано обвиняешь меня в самопридумывание :)
"Особенности GCC-откомпилированного кода: ... Переменные типа const хранятся в read-only секции ... "
Ну, не скажи, что прямо UB, но ничего хорошего, конечно, нет.
В таком случае интересно, как можно создать неизменяемый блок в памяти используя другие компиляторы?

Александр Смаль

пише?11 февраля 2007 в 15:17

Александр Скородумов написал:
> Допустим, GCC вот после такого вылетает, но MSVC+ 2005 забивает и дает спокойно изменять данные.
Это и называется UB.

> Покурил Google - необосновано обвиняешь меня в самопридумывание :)
>"Особенности GCC-откомпилированного кода: ...
Обоснованно. Это особенности компилятора, а у С++ есть Стандарт.

>Ну, не скажи, что прямо UB, но ничего хорошего, конечно, нет.
Ссылку на место в стандарте дать?

7.1.5.1/6
For another example
class X {
public:
mutable int
int j;
};
class Y {
public:
X x;
Y();
};

const Y y;
y.x.i++; // well-formed: mutable member can be modified
y.x.j++; // ill-formed: const-qualified member modified
Y* p = const_cast<Y*>(&y); // cast away const-ness of y
p->x.i = 99; // well-formed: mutable member can be modified
p->x.j = 99; // undefined: modifies a const member
—end example]

> В таком случае интересно, как можно создать неизменяемый блок в памяти используя другие компиляторы?
А зачем оно тебе нужно? Какая тебе разница, как конкретно
хранятся константные объекты?

Александр Смаль

пише?11 февраля 2007 в 15:18

Или даже лучше 7.1.5.1/5
[Example:
const int ci = 3; // cv-qualified (initialized as required)
ci = 4; // ill-formed: attempt to modify const
int i = 2; // not cv-qualified
const int* cip; // pointer to const int
cip = &i; // OK: cv-qualified access path to unqualified
*cip = 4; // ill-formed: attempt to modify through ptr to const
int* ip;
ip = const_cast<int*>(cip); // cast needed to convert const int* to int*
*ip = 4; // defined: *ip points to i, a non-const object
const int* ciq = new const int (3); // initialized as required
int* iq = const_cast<int*>(ciq); // cast required
*iq = 4; // undefined: modifies a const object

Александр Скородумов

пише?11 февраля 2007 в 15:23

"Это и называется UB." Так использоние export template тоже UB, ведь в Comeu это есть, а в других компиляторах нет :)
"Обоснованно. Это особенности компилятора, а у С+ есть стандарт." Не-а, ты мне пытался указать на то, что этого не существует как факт, я же говорю, что это есть и поддерживается компилятором GCC.
Насчет вырезки из стандарта - понятно :)

Александр Смаль

пише?11 февраля 2007 в 15:35

Просто надо четко разграничивать Стандарт и особенности компилятора.
UB - это, к примеру, если будешь обращаться к неинициализированной памяти. У тебя все может быть ок, а может и упасть.
А отстутствие фич (того же export-a шаблонов) - это называется, "неполное соответствие стандарту". Это уже не UB. Просто код
с экспортом шаблонов у тебя не скомпилируется.

Да все компиляторы предлагают свои дополнительные фичи (к примеру, __if_exists от MSVC), но вряд ли они будут перечить стандарту.

Хотя и такое бывает. MSVC позволяет передавать временные объекты по неконстантной ссылке, что в общем-то противоречит стандарту...

А на счет GCC. Я не стал бы на это забиваться %). Опять же, зачем тебе об этом знать? Как ты сможешь это использовать? Я тебя уверяю, что MSVC также можно уронить по изменению константного объекта %). Правда я не знаю, описанно ли это в документации...

Александр Скородумов

пише?11 февраля 2007 в 22:17

Да вот бы знать как можно давать по башке за изменение const данных :) Просто, допустим, если у меня будет некая библиотека ... и поле констатное будет открытым ... Ну, хотелось бы оберечься от назойливых юзверей :)

Олег Андреев

пише?12 февраля 2007 в 0:35

Идеальных библиотек не бывает. Когда надо будет пофиксить что-нибудь, лучше не иметь лишних препятствий.
И потом, модификаторы const, private, и прочие сделаны в помощь, а не для самоистязания. Не стоит относиться к ним с религиозным трепетом :)

По теме: помнится, ребята из Оперы отказались добавить void-pointer в их оконный объект (мне нужно было запомнить свой объект в нем, чтобы в одном из колбэков его оттуда вынуть), мотивируя это тем, что "вы можете случайно удалить объект в другом месте, а потом, воспользовавшись указателем, получить segfault". Я плакал. Пришлось юзать std::map<OperaWindow, MyWindow>.

Александр Смаль

пише?12 февраля 2007 в 10:46

Каждый сам себе буратино %)

Александр Скородумов

пише?12 февраля 2007 в 16:20

Ну, как говорит Саттер - если уж и использовать модифигатор const, то фанатично :)

Олег Андреев

пише?12 февраля 2007 в 17:25

"если уж и использовать модифигатор const, то фанатично"

Все пометить const-ом, а при необходимости изменить значение ставить const_cast. Тогда код будет супернадежный. Все ненадежности можно быстро найти поиском по слову const_cast (во всем дереве каталогов проекта) и перед релизом - закомментировать.

Родионов Владимир

пише?12 февраля 2007 в 19:27

Народ, как обрезать размер файла, методом освобождения кластеров (не удаляя конечно же)?

Александр Скородумов

пише?12 февраля 2007 в 23:16

Олег, ну, передегивать не надо :) А как ты сделаешь const_cast функцие? :)

Олег Андреев

пише?12 февраля 2007 в 23:48

Вопрос не понял. Указатель на функцию не хуже других. А возвращаемое значение можно кинуть в переменную, а её потом кастнуть.

Александр Скородумов

пише?13 февраля 2007 в 18:01

Ну если функция типа
void func(int x) const;
Разве ты сможешь сделать const_cast для членов класса, чтобы иметь возможность их изменить?

Олег Андреев

пише?14 февраля 2007 в 19:52

Твоя правда. Прикол до конца не удался. Переходим на триграфы ;)

Александр Скородумов

пише?14 февраля 2007 в 23:05

Приколыст, йпоть :) А ты нигде не видел статьи на тему "какое наследование использовать"? Типа размышления. Просто Саттер меня жестоко озадачил :) но написано у него достаточно сжато, может где есть более подробно ?

Олег Андреев

пише?15 февраля 2007 в 1:52

Вот его блог: http://blogs.msdn.com/hsutter/

Интересно, почему это все так трясутся вокруг сборщика мусора в Си+ ?

Александр Скородумов

пише?15 февраля 2007 в 2:18

Кто трясется? :) Нафиг он , если есть умные пойтнеры :)

Олег Андреев

пише?15 февраля 2007 в 14:33

Нафиг умные пойнтеры, если есть стек и деструкторы? :) std::string и иже с ними прекрасно работают.
У меня в жизни как-то раз были сложности с указателями, но там GC не применим - указатели путешествовали через 3 среды (Джава, Скрипт, Си+ ) и аккуратно освобождались в колбэках. Было жутко, но кроме как вручную задача не решалась. В остальных случаях надобности в смарт-пойнтерах не было не разу.

Александр Скородумов

пише?15 февраля 2007 в 18:16

С умными указателями можно забыть о операторах освобождения памяти+экономия памяти за счет совместного использования данных :)

Олег Андреев

пише?15 февраля 2007 в 18:29

Впрочем, умные пойнтеры - это и есть оболочка вокруг класса, использующая освобождение на стеке и уменьшение счетчика в деструкторе. Ничего нового ;-)

Александр Скородумов

пише?15 февраля 2007 в 18:55

Ну а кто спорит :) Прсото ты говоришь нафиг нужны :) Я отвечаю почему. Конечно, без низкоуровневных конструций не обойтись при их написании :)

Олег Андреев

пише?15 февраля 2007 в 22:28

Вот и поговорили :) А для меня остается загадкой как _1 работает в бустовской lambda-либе: http://boost.org/doc/html/lambda.html
Т.е. как объяснить отсутствие compile error на _1 (считая компилятор соответствующим Стандарту)?

Родионов Владимир

пише?18 февраля 2007 в 10:04

Ну кто-нить подскажет как обрезать размер файла, а то создавать новый и удалять старый, процесс долгий, если файлы больше 2 Гб.

Глеб Панчишен

пише?19 февраля 2007 в 0:54

чо за трабла, мож кто знает +)
пишу класс-шаблон
при инлайн описании методов - все замечательно, но вот при внешнем - инкер эрор, 3 часа моск ломал - не допер +))

Александр Скородумов

пише?19 февраля 2007 в 2:22

Ты пытаешься шаблонный класс разделить на реализацию и интерфейс в разных единицах компиляции? Без явного воплощения не получится

Олег Андреев

пише?19 февраля 2007 в 10:39

Поэтому шаблонные классы разделяются на файлы .h и .hpp, а не h/cpp. Разумеется, .hpp компилировать в объектник смысла нет, т.к. это шаблон. Проверь, не пытается ли твой компилятор схавать все .cpp файлы, которые попадаются под руку.

Глеб Панчишен

пише?19 февраля 2007 в 21:11

спасибо, посмотрю

Андрей "Forgottn" Косыченко

пише?27 февраля 2007 в 8:43

Среда C+ Builder... Решения рассматриваются для любой Win32 среды...

Хочется реализовать окно, которое будет размещаться на рабочем столе находясь сверху, но при этом не перекрывая ни одно другое - так реализован мелкомягкий таскбар - он вытесняет все окна, попадающие в ту область где он лежит...
Вопроса соответственно два:
1. Возможно ли реализовать такое окно пользуясь, например, стандартными API константами типа WS_..., или например установкой каких-нибудь SystemMetrics, а может Screen? Если да, то как?
2. Если ответ на первый вопрос - нет, то как рациональнее сделать такую вещь программно?

Олег Андреев

пише?28 февраля 2007 в 2:15

#define vkontakte --productivity


Top
 



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
[ Time : 0.084s | 10 Queries | GZIP : Off ]