Модераторы: xvr

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> разница между MSVS и g++, Поделитесь опытом и соображениями 
:(
    Опции темы
WTF4XZ
  Дата 5.7.2007, 02:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 16.4.2007
Где: 63 Самара

Репутация: нет
Всего: 5



Вот созрел. Решил перейти на Linux а вот возникла проблема, я уже привык к MSVS 8 как с неё начал изучать програминг так в ней и завис, и мне хотелось бы узнать про то, как же это по линуксом выглядит: програмирование на С++, тоесть отличие и разные интерестные аспекты.
 smile   smile 
--------------------
Я создание эмоций, создание способные чувствовать не только эмоции людей но и машин.Я EMO_CODER != FALSE;Никто не знает о нас, но мы есть, мы живём, мы кодим и мы... чувствуем, ипспытываем такие эмоции.. сильнее любого бинарника, мощнее любого ассемблера.
PM MAIL ICQ GTalk Jabber   Вверх
archimed7592
Дата 5.7.2007, 02:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 3
Всего: 93



Да в общем случае - точно так же. Компиляторы такие же(gcc, icc, ...). IDE такие же(kdevelop, eclipse, ...).
Под словами "такие же" я имею "выполняют те же ф-ции и позволяют добиваться тех же целей, но возможно, иными путями".
Ну, ессно, там нету MFC, но есть Qt и GTK+, которые, кстати, есть и под винду. Ну, ессно, у posix-систем api, отличное от win32api, но, зато, posix-api одинаковое практически на всех системах (linux, *bsd, ...).
Короч, программирование там только приятней.
Как кто-то сказал - "Linux - это IDE для gcc smile".

Конкретно отличия MSVC от g++ примерно такие же, как, скажем, отличия письменного стола от монитора smile. MSVC - IDE, g++ - компилятор.


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
Rickert
Дата 5.7.2007, 04:28 (ссылка)    | (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: -2
Всего: 52



WTF4XZ, скажу тебе сразу - что это большее кол-во мороки. Возьня с созданием конфигурационных / make файлов, оптимизация того, что в vs есть по умолчанию. Например: в vs под каждую переменную отводиться памяти кратное 4, что в конечном итоге ведёт к увеличению производительности, потому что, если размер того же класса кратен 4 - есть прирост. точно не могу сказать, с чем это связано, но факт.
Ещё, если у тебя проблемы с англ., то тебе будет трудно разбирать доки,ибо они тут в 90% на англ.
Так же скажу, что нет нормальной среды разработки. Нормальной - стабильной. kdevelop - это постоянные зависоны и лаги, да вообщем как в 50% всего софта под юникс системы - никто особо поддержкой не занимается, ибо не платят никому. Так как нормальной среды разработки нет, то 95% всех программеров сидят и кодят всё на коенке - в обычном текстовом редакторе, по типу досовских, затем вояют makefile и компилят, ищут ошибки. Чтобы найти утечку. Возможности дебага, соответственно сокращаются в разы, приходиться втупую вести логи, чтобы найти утечку памяти. А иногда и не находят и даже не подозреваю о её существовании.
Контроль за версиями - я тоже подозреваю ещё та штучка. Пока не разбиралс я ещё, но если верить словам товарищей - что мол контроль будет вестись из консоли - то я в узбекском универмаге, ибо в том же tortoise svn-то так сразу без поллитра не въедешь, учитывая что там "интуитивный" интерфейс, что уж говорить о том, чтобы с консолью принаровиться.
Вообщем никсы - это ужос.
ИМХО


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
MAKCim
Дата 5.7.2007, 08:52 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(Rickert @  5.7.2007,  04:28 Найти цитируемый пост)
Например: в vs под каждую переменную отводиться памяти кратное 4, что в конечном итоге ведёт к увеличению производительности, потому что, если размер того же класса кратен 4 - есть прирост. точно не могу сказать, с чем это связано, но факт.

1. Как измеряли производительность?
2. Что значит "отводится памяти кратное 4?" (адреса выравнены по границе двойного слова или размер кратен двойному слову)?
Цитата(Rickert @  5.7.2007,  04:28 Найти цитируемый пост)
оптимизация того, что в vs есть по умолчанию.

что есть в VC по умолчанию?
Цитата(Rickert @  5.7.2007,  04:28 Найти цитируемый пост)
Возьня с созданием конфигурационных / make файлов

для кого возня, а для кого - полный контроль над процессом сборки
Цитата(Rickert @  5.7.2007,  04:28 Найти цитируемый пост)
Так же скажу, что нет нормальной среды разработки. Нормальной - стабильной. kdevelop - это постоянные зависоны и лаги, да вообщем как в 50% всего софта под юникс системы - никто особо поддержкой не занимается, ибо не платят никому

начинается...
сразу предупреждаю: либо аргументация, либо сразу в другой раздел
Цитата(Rickert @  5.7.2007,  04:28 Найти цитируемый пост)
Так как нормальной среды разработки нет, то 95% всех программеров сидят и кодят всё на коенке - в обычном текстовом редакторе, по типу досовских

ты видел досовский редактор в глаза?
кстати, что значит по типу досовских? или если консольный - то значит досовский? или мы смотрим только на внешнюю оболочку, а не на функционал?
Цитата(Rickert @  5.7.2007,  04:28 Найти цитируемый пост)
ибо в том же tortoise svn-то так сразу без поллитра не въедешь, учитывая что там "интуитивный" интерфейс, что уж говорить о том, чтобы с консолью принаровиться.

*N?X != Windows
в этом вся проблема
поняв специфику unix-систем, все становится простым, понятным и логичным
не надо экстраполировать Windows на *N?X


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
JackYF
Дата 5.7.2007, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 3
Всего: 162



Цитата(Rickert @  5.7.2007,  04:28 Найти цитируемый пост)
Контроль за версиями - я тоже подозреваю ещё та штучка. Пока не разбиралс я ещё, но если верить словам товарищей - что мол контроль будет вестись из консоли - то я в узбекском универмаге, ибо в том же tortoise svn-то так сразу без поллитра не въедешь, учитывая что там "интуитивный" интерфейс, что уж говорить о том, чтобы с консолью принаровиться.
Вообщем никсы - это ужос.
ИМХО 


Как минимум тут не соглашусь. Пользуюсь консольными версиями cvs и svn и радуюсь жизни. Прекрасно работают, и никаких Tortoise не надо.

Имхо, оптимизатор g++ не уступает оптимизатору VS в целом.

Насчет консоли - да. Работать больше в консоли. Ну так это же не винда smile



Rickert, не пугай человека заранее smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
MAKCim
Дата 5.7.2007, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



WTF4XZ, 
В Linux есть основные средства разработки: GCC, GDB, LD, MAKE
GCC - семейство компиляторов (в том числе С и С++)
GDB - отладчик
LD - компоновщик
MAKE - средство сборки проектов
Основное преимущество GCC (в плане С и С++) - четкое разделение на С-компилятор и С++-компилятор, т. е нет винегрета с языками, GCC полностью поддерживает стандарт C99, что немаловажно
касаемо процесса разработки
API стандартизирован и хорошо документирован
не слушай Rickert, русская документация есть и найти ее не сложно
создание оконных приложений - использование библиотек GTK, QT (или напрямую использование Xlib)


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Rickert
Дата 5.7.2007, 09:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: -2
Всего: 52



Цитата(MAKCim @  5.7.2007,  08:52 Найти цитируемый пост)
1. Как измеряли производительность?

Создаётся несколько классов, с одинаковыми переменными. Например:
Код

class cls
{
  public:
    bool b;
    int i;
    float c;
    long good;
    char not;
    char nNot;
    bool b2;
};

Теперь создаётся ещё например так:
Код
class cls
{
  public:
    bool b:4;
    int i;
    float c;
    long good;
    char not;
    char nNot;
};

И пишется какой-нибудь проект небольшой, который делает большое кол-во обращений к переменным и производит с ними всякие мат. операции к примеру. Затем смотрим на результаты в милисекундах.
На gamedev.ru в разделе tips есть пример с результатами вроде.
Цитата(MAKCim @  5.7.2007,  08:52 Найти цитируемый пост)
2. Что значит "отводится памяти кратное 4?" (адреса выравнены по границе двойного слова или размер кратен двойному слову)?

Это значит что тот же sizeof(cls)%4 = 0.
Цитата(MAKCim @  5.7.2007,  08:52 Найти цитируемый пост)
что есть в VC по умолчанию?

Как раз выравнивание в памяти по 4 байта.
Цитата(MAKCim @  5.7.2007,  08:52 Найти цитируемый пост)
для кого возня, а для кого - полный контроль над процессом сборки

Я не спорю: гуру конечно контролируют всё и мастерски, но согласись - это не очень удобно? Я писал именно с точки зрения удобства.
Цитата(MAKCim @  5.7.2007,  08:52 Найти цитируемый пост)
начинается...
сразу предупреждаю: либо аргументация, либо сразу в другой раздел

А какие аргументы? Скрины зацилкенной компиляции? Или Сообщений об критической ошибке?
Цитата(MAKCim @  5.7.2007,  08:52 Найти цитируемый пост)
ты видел досовский редактор в глаза?
кстати, что значит по типу досовских? или если консольный - то значит досовский? или мы смотрим только на внешнюю оболочку, а не на функционал?

Да, под словом "досовский" я подразумевал имено внешний вид. Чтобы человеку было понятно. Он ведь недавно, как я понял пересел на это дело.
Цитата(MAKCim @  5.7.2007,  08:52 Найти цитируемый пост)
*N?X != Windows
в этом вся проблема
поняв специфику unix-систем, все становится простым, понятным и логичным
не надо экстраполировать Windows на *N?X 

Я не экстрополирую, я сравниваю. Простое сравнение, простого порграммиста, который как и многие не так давно начал переходить с винды на никсы под долгу работы.
Цитата(JackYF @  5.7.2007,  08:56 Найти цитируемый пост)
Rickert, не пугай человека заранее 

Не пугаю, а просто описываю факты с которыми сам сталкивался. Он ведь спрашивает.

Добавлено через 6 минут и 57 секунд
Цитата(MAKCim @  5.7.2007,  09:08 Найти цитируемый пост)
не слушай Rickert, русская документация есть и найти ее не сложно

Попрошу ссылки на спецификацию xdmcp протокола и описание работы init'а подробное smile 

Это сообщение отредактировал(а) Rickert - 5.7.2007, 09:20


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
MAKCim
Дата 5.7.2007, 09:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(Rickert @  5.7.2007,  09:16 Найти цитируемый пост)
Это значит что тот же sizeof(cls)%4 = 0.

прочитай
Цитата

SYSTEM V
APPLICATION
BINARY INTERFACE
Intel386™ Architecture
Processor Supplement

Раздел Aggregates and Unions
станет очевидным момент с выравниванием
Цитата(Rickert @  5.7.2007,  09:16 Найти цитируемый пост)
Я не спорю: гуру конечно контролируют всё и мастерски, но согласись - это не очень удобно? Я писал именно с точки зрения удобства.

да дело не в гуру совсем
я еще раз говорю, не экстраполируйте Windows на *N?X
да и понятие об удобности субъективно
Цитата(Rickert @  5.7.2007,  09:16 Найти цитируемый пост)
А какие аргументы? Скрины зацилкенной компиляции? Или Сообщений об критической ошибке?

это уж вам решать, какие аргументы
я не сильно использовал KDevelop в работе, но и багов не замечал, поэтому и прошу вас привести аргументы
Цитата(Rickert @  5.7.2007,  09:16 Найти цитируемый пост)
Да, под словом "досовский" я подразумевал имено внешний вид. Чтобы человеку было понятно. Он ведь недавно, как я понял пересел на это дело.

обычно есть два варианта одного и того же текстового редактора: консольный и GUI
кстати, консоль Linux я бы поостерегся сравнивать с досовской  smile 
Цитата(Rickert @  5.7.2007,  09:16 Найти цитируемый пост)
Я не экстрополирую, я сравниваю. Простое сравнение, простого порграммиста, который как и многие не так давно начал переходить с винды на никсы под долгу работы.

любой переход - это ломка устоявшихся стереотипов (в любой области)
в том числе и об удобности

Это сообщение отредактировал(а) MAKCim - 5.7.2007, 09:45


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Rickert
Дата 5.7.2007, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: -2
Всего: 52



Цитата(MAKCim @  5.7.2007,  09:35 Найти цитируемый пост)
кстати, консоль Linux я бы поостерегся сравнивать с досовской  

согласен: дос - ничета
Цитата(MAKCim @  5.7.2007,  09:35 Найти цитируемый пост)
любой переход - это ломка устоявшихся стереотипов (в любой области)

Не соглашусь. Переход с винды на Mac - намного проще. Как и переход с линукс на фрю, например


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
MAKCim
Дата 5.7.2007, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(Rickert @  5.7.2007,  09:39 Найти цитируемый пост)
Не соглашусь. Переход с винды на Mac - намного проще. Как и переход с линукс на фрю, например 

я про простоту перехода не говрю
я говорю, что любое изменение требует пересмотра своих позиций
 smile 
чем *BSD проще?

Это сообщение отредактировал(а) MAKCim - 5.7.2007, 09:44


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Rickert
Дата 5.7.2007, 09:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: -2
Всего: 52



Я не сказал, что freebsd лучше, я сказал, что переход с винды на мак проще, так же как переход с с линукса на фрю.


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
MAKCim
Дата 5.7.2007, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Rickert, 
чем переход на *BSD проще?
потому что уже с одной юниксоподобной системой знаком, так?


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
GrayCardinal
Дата 5.7.2007, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фигасе
****


Профиль
Группа: Завсегдатай
Сообщений: 3039
Регистрация: 9.11.2003

Репутация: 8
Всего: 58



WTF4XZ, 
В общем так. Винда - мастдай. Не стоит про это забывать smile (ИМХО, конечно). Все что есть в Visual C++ нет в Линуксе по одной простой причиние - это никому нафиг не надо. Да, со средами проблемы. Да, kdevelop, anjuta, етк, довольно глючные. Но, простите, пользоваться какой-либо средой, когда у тебя под руками Vim...
Насчет мэйка. Естественно, писать Makefile ручками будут только виндузятники, и только для того чтобы покричать "линух с...". Нормальный чел возьмет либо AAP (www.a-a-p.org) либо Scons (http://www.scons.org/). Так, меж прочим, одна строчка AAP : 
Цитата

:program hello : main.cxx

Все. Собирается просто 
$ aap
Про МЭФЭСИ (MFC) вообще молчу. Гораздо логичней юзать man 2 и документацию по Qt4.







--------------------
PM MAIL WWW   Вверх
JackYF
Дата 5.7.2007, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 3
Всего: 162



Цитата(GrayCardinal @  5.7.2007,  12:25 Найти цитируемый пост)
Насчет мэйка. Естественно, писать Makefile ручками будут только виндузятники

не надо smile Я писал и пишу smile. Классное развлечение, и куча возможностей, есть где разгуляться фантазии.


Цитата(GrayCardinal @  5.7.2007,  12:25 Найти цитируемый пост)
AAP (www.a-a-p.org) либо Scons (http://www.scons.org/). Так, меж прочим, одна строчка AAP : 

а вот за это спасибо. Буду смотреть, может, действительно удобнее и красивее будет.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
GrayCardinal
Дата 5.7.2007, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фигасе
****


Профиль
Группа: Завсегдатай
Сообщений: 3039
Регистрация: 9.11.2003

Репутация: 8
Всего: 58



JackYF, 

Цитата

не надо  Я писал и пишу . Классное развлечение, и куча возможностей, есть где разгуляться фантазии.

Ну да, мне тоже нравилось по началу  smile 


--------------------
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0778 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.