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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переход с C# на C++ 
:(
    Опции темы
Валерия
Дата 1.1.2008, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 598
Регистрация: 10.3.2007

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



Пытаюсь из C# перейти на C++ для написания визуального приложения с формами.
Я что то не то создаю, или...
Почему так много мусора?
Ну допустим я создаю приложение Windows Forms, сразу создаеться такая туча файлов в которых огромное количество какогото левого кода.
В C# в реальности пару файликов: формы, твой код, и данные ехе файла (авторство и тп)
Так вот, есть ли какойто компилятор, или... Незнаю что, что бы было максимально похоже как у C# smile?

Вот банально создаю пустой проект в C++ с формой, компилю - получаеться 38 кб. Откуда?

Добавлено через 1 минуту и 33 секунды
Наверно мой пост не покажеться бредом только тем кто из C# на C++ переходили/пытались smile
PM MAIL   Вверх
APM
Дата 1.1.2008, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 13.7.2007

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



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

Вот пример создания формочки с кнопочкой (взято из tutorial)
Код

 #include <QApplication>
 #include <QPushButton>

 int main(int argc, char *argv[])
 {
     QApplication app(argc, argv);

     QPushButton hello("Hello world!");
     hello.resize(100, 30);

     hello.show();
     return app.exec();
 } 


PM   Вверх
cardinal
Дата 1.1.2008, 17:09 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


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

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



Какой бы тупой вопрос не был -
Название темы должно отражать ее суть!


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
bsa
Дата 1.1.2008, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Валерия, я поддерживаю APM. На объем кода не смотри, так как он может быть еще и больше, когда включена отладка, например.
Обрати внимание на mingw + eclipse + QT + QT Eclipse Integration for C++. Правда, оно все не очень тривиально устанавливается. Но если голова есть на плечах, то все получится.
PM   Вверх
archimed7592
Дата 2.1.2008, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


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

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



Цитата(Валерия @  1.1.2008,  16:30 Найти цитируемый пост)
Вот банально создаю пустой проект в C++ с формой, компилю - получаеться 38 кб. Откуда?

Прибавь к скомпиленному C# проекту mscoree и получишь... какие там килобайты - мегов 15 выйдет. Это я молчу про System.Data и пр. "аддоны".


Валерия, если вопрос именно в переходе с C# на managed C++ аля "C++ .NET"(отличия которого от C# только в синтаксисе, если не использовать unmanaged конструкции), то здесь ему не место - скажи, я перенесу.


--------------------
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   Вверх
MAKCim
Дата 2.1.2008, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(archimed7592 @  2.1.2008,  11:25 Найти цитируемый пост)
Прибавь к скомпиленному C# проекту mscoree и получишь... какие там килобайты - мегов 15 выйдет. Это я молчу про System.Data и пр. "аддоны".

mscore - это как libstdc++ или libc, т. е окружение времени выполнения
в обоих случаях - это DLL (SO)
разница в размере идет засчет того, что через MSIL можно более компактно сформировать код


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

PM MAIL   Вверх
Любитель
Дата 3.1.2008, 02:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

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



Цитата(MAKCim @  2.1.2008,  11:31 Найти цитируемый пост)
mscore - это как libstdc++ или libc, т. е окружение времени выполнения

Нет.

Аналог libc и иже с нею - %WinDir%/Microsoft .Net/xxx/System*.dll. xxx - версия фреймворка. Короче - FCL smile

mscoree - собсно ВМ. Если мы используем чистый нэтив, то этой прослойки просто нет.


--------------------
PM MAIL ICQ Skype   Вверх
MAKCim
Дата 3.1.2008, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(Любитель @  3.1.2008,  02:06 Найти цитируемый пост)
Нет.

если уж быть совсем точным, тогда не libc, а ld
хотя он все равно компонент glibc
посмотри процесс загрузки .NET приложения, роль в этом процессе mscoree и сравни с ролью ld
аналогия будет
Цитата(Любитель @  3.1.2008,  02:06 Найти цитируемый пост)
mscoree - собсно ВМ. Если мы используем чистый нэтив, то этой прослойки просто нет. 

и тут полная аналогия
можно написать код, который не будет использовать ld для отображения и libc для работы

Это сообщение отредактировал(а) MAKCim - 3.1.2008, 10:11


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

PM MAIL   Вверх
Любитель
Дата 3.1.2008, 18:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

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



Цитата(MAKCim @  3.1.2008,  10:11 Найти цитируемый пост)
а ld

Частично. Причём с двух сторон частично smile ld реализуют часть функций, подобных функциям mscoree.dll, а mscoree реализует чатсь функций подобных функциям ld.

Цитата(MAKCim @  3.1.2008,  10:11 Найти цитируемый пост)
и тут полная аналогияможно написать код, который не будет использовать ld для отображения и libc для работы

Не понял :| Я имел ввиду, что (если говорить про основную функцию mscoree - грубо говоря, трансляцию IL-кода в нэтив) в не дотнетовских приложениях такого слоя нету впринципе. И собственно именно эта функция mscoree на больше всего интеересует - именно она даёт уменьшение размера бинарников. За счёт более краткого IL-кода.


--------------------
PM MAIL ICQ Skype   Вверх
MAKCim
Дата 3.1.2008, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(Любитель @  3.1.2008,  18:14 Найти цитируемый пост)
И собственно именно эта функция mscoree на больше всего интеересует - именно она даёт уменьшение размера бинарников. За счёт более краткого IL-кода. 

я воде это и подразумевал
Цитата(MAKCim @  2.1.2008,  11:31 Найти цитируемый пост)
разница в размере идет засчет того, что через MSIL можно более компактно сформировать код 


Добавлено через 3 минуты и 54 секунды
Цитата(Любитель @  3.1.2008,  18:14 Найти цитируемый пост)
Не понял :| Я имел ввиду, что (если говорить про основную функцию mscoree - грубо говоря, трансляцию IL-кода в нэтив) в не дотнетовских приложениях такого слоя нету впринципе

точно также libc/ld слоя может не быть в программе под конкретную ОС
это я подразумевал под аналогией


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

PM MAIL   Вверх
Любитель
Дата 3.1.2008, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

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



Цитата(MAKCim @  3.1.2008,  18:34 Найти цитируемый пост)
я воде это и подразумевал

Полностью согласен smile Явысказывался против фразы
Цитата(MAKCim @  2.1.2008,  11:31 Найти цитируемый пост)
mscore - это как libstdc++ или libc, т. е окружение времени выполнения


Думаю, мы друг друга уже поняли smile


--------------------
PM MAIL ICQ Skype   Вверх
bsa
Дата 3.1.2008, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



народ, давайте не забывать, что это раздел для новичков! Уверен, что 95% целевой аудитории ничего не поняли.
PM   Вверх
JackYF
Дата 3.1.2008, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



bsa, верно, ну так это же не фак, а его обсуждение smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Любитель
Дата 3.1.2008, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

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



Эт вроде вообще просто вопрос был...


--------------------
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


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

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


 




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


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

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