HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1581  
Старый 17.09.2008, 15:22
ForNeVeR
Участник форума
Регистрация: 01.05.2006
Сообщений: 216
С нами: 10540906

Репутация: 62
По умолчанию

Цитата:
Деструктор вызывать нельзя ни в каком случае.
Если хочешь освободить объекты - то просто сделай так. чтобы они не нужны были твоей программе - и Gc удалит их сам.
Верно, извиняюсь, глупость сморозил. Не имел под рукой компилятора. Действительно, студийный компилер даже слова delete не знает. А раз его нет - значит, оно не нужно.
 
Ответить с цитированием

  #1582  
Старый 17.09.2008, 17:38
4p3
Участник форума
Регистрация: 18.08.2008
Сообщений: 159
С нами: 9332069

Репутация: 92
По умолчанию

Цитата:
Сообщение от nerezus  
Код:
#include <vector>
#include <string>
#include <windows.h>

using namespace std;

vector<string> glob(const char* path) {
	vector<string> v;
	WIN32_FIND_DATA FindFileData;
	HANDLE hFind;
	string s;

	hFind = FindFirstFile(path, &FindFileData);
	do {
		s = string(FindFileData.cFileName);
		if (s != "." && s != "..") {
			v.push_back(s);
		}
	} while (FindNextFile(hFind, &FindFileData));
	return v;
}
Крайне медленная функция. я бы брал ссылку на вектор, все равно его объявит вышестоящая функция. А так еще и конструктор копирования вызывается.

Последний раз редактировалось 4p3; 17.09.2008 в 17:54..
 
Ответить с цитированием

  #1583  
Старый 18.09.2008, 00:21
nerezus
Флудер
Регистрация: 12.08.2004
Сообщений: 3,791
С нами: 11444066

Репутация: 2290


По умолчанию

Цитата:
Крайне медленная функция
Как по мне - то разница в пару процентов несущественна, ведь все равно нагрузка на ФС будет основная.
 
Ответить с цитированием

  #1584  
Старый 18.09.2008, 10:10
NC22
Новичок
Регистрация: 12.07.2008
Сообщений: 14
С нами: 9384791

Репутация: 0
По умолчанию

Возникла проблема. Пишу на С++ Builder'e. Хотел сделать свою прогу более удобной, добавил объект MainMenu и перенес функции нажатия соотв. клавишь туда. Однако после переноса (если просто через Button'ы меню программы делать, все работает на Ура) одна кнопка после нажатия стала перекрашивать окно, т.е. оно становится каким-то нетаким, заголовок программы пропадает, кнопки (свернуть,развернуть и закрыть в заголовке) тоже, поле ввода текста на половину окрашивается черным(до того места до которого есть текст). Если нажать на заголовок программы то она закрывается. Ошибок не выдает. Повторюсь что если через Button обычый без MainMenu то все нормально (даже через маинменю код выполняет, но окно программы портит и нечего не видно толком)
 
Ответить с цитированием

  #1585  
Старый 18.09.2008, 10:22
Exile1985
Участник форума
Регистрация: 10.08.2006
Сообщений: 147
С нами: 10395573

Репутация: 94
По умолчанию

Цитата:
Сообщение от NC22  
Возникла проблема. Пишу на С++ Builder'e. Хотел сделать свою прогу более удобной, добавил объект MainMenu и перенес функции нажатия соотв. клавишь туда. Однако после переноса (если просто через Button'ы меню программы делать, все работает на Ура) одна кнопка после нажатия стала перекрашивать окно, т.е. оно становится каким-то нетаким, заголовок программы пропадает, кнопки (свернуть,развернуть и закрыть в заголовке) тоже, поле ввода текста на половину окрашивается черным(до того места до которого есть текст). Если нажать на заголовок программы то она закрывается. Ошибок не выдает. Повторюсь что если через Button обычый без MainMenu то все нормально (даже через маинменю код выполняет, но окно программы портит и нечего не видно толком)
было бы замечательно если бы ты код выложил, а лучше весь проект через файло обменник.

з.ы. да и бросай ты это гнилое дело писать в билдере на с++
 
Ответить с цитированием

  #1586  
Старый 18.09.2008, 12:01
nerezus
Флудер
Регистрация: 12.08.2004
Сообщений: 3,791
С нами: 11444066

Репутация: 2290


По умолчанию

Цитата:
з.ы. да и бросай ты это гнилое дело писать в билдере на с++
А ты подскажешь, как в Vc юзать Vcl? ))))

Цитата:
ак по мне - то разница в пару процентов несущественна, ведь все равно нагрузка на ФС будет основная.
Но все равно по указателю получше будет, тут ты прав, но причина твоя явно надумана)
 
Ответить с цитированием

  #1587  
Старый 18.09.2008, 12:30
4p3
Участник форума
Регистрация: 18.08.2008
Сообщений: 159
С нами: 9332069

Репутация: 92
По умолчанию

Цитата:
Сообщение от nerezus  
Но все равно по указателю получше будет, тут ты прав, но причина твоя явно надумана)
Ты сам себе ответил?

Ладно, ближе к делу. Просто возвращение целого вектора из функции довольно редкий стиль. Реально юзер не заметит этого, так как даже при худшем случае в 10к файлов мы лишний раз скопируем килобайт 100(10 символов на все про все). Для сегодняшнего дня это пустяки.

Хотя эту функцию можно еще ускорить, если использовать уникод-вариант.

Оптимизация - корень всех зол, но не стоит о ней забывать.
 
Ответить с цитированием

  #1588  
Старый 18.09.2008, 12:38
nerezus
Флудер
Регистрация: 12.08.2004
Сообщений: 3,791
С нами: 11444066

Репутация: 2290


По умолчанию

Цитата:
Хотя эту функцию можно еще ускорить, если использовать уникод-вариант.
Я ее просто с AnsiString перевел, в билдере вообще с уникодом жопа )

Цитата:
Оптимизация - корень всех зол, но не стоит о ней забывать.
Почитай, тебе полезно будет: http://rsdn.ru/article/philosophy/Optimization.xml
Краткий смысл: оптимизировать нужно только критические места.
 
Ответить с цитированием

  #1589  
Старый 18.09.2008, 12:46
NC22
Новичок
Регистрация: 12.07.2008
Сообщений: 14
С нами: 9384791

Репутация: 0
По умолчанию

Цитата:
было бы замечательно если бы ты код выложил, а лучше весь проект через файло обменник.
Ок. Надеюсь на народе пойдет (http://narod.ru/disk/2665777000/prog_src.rar.html)? Ну если надо еще залью, только скажи сам куда. В архиве Исходники и готовый билд. Сам посмотришь, на кнопке и на др. кнопке в Меню одно и тоже действие на OnClick. Не суди строго за код, учился билдеру сам, писал сам не чего не принемая за базу. В уневерситете, вот в этом году поступил, будем изучать Delphi уже профессионально, но хотелось бы конечно MVS освоить, ну да ладно...не судьба.
Так же в архиве тестовый файл примерMTADMвSAMP.map . Загружешь его через программу (Файл->Открыть...) далее Конвертировать в...->MTA DM в SAMP или просто окне программы кнопка "Через простую кнопку все ОК".
 
Ответить с цитированием

  #1590  
Старый 18.09.2008, 18:17
O.mnenie
Banned
Регистрация: 18.08.2008
Сообщений: 77
С нами: 9331021

Репутация: 447
По умолчанию

Цитата:
Сообщение от nerezus  
Я ее просто с AnsiString перевел, в билдере вообще с уникодом жопа )


Почитай, тебе полезно будет: http://rsdn.ru/article/philosophy/Optimization.xml
Краткий смысл: оптимизировать нужно только критические места.
да ! полезна
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...