Попробуйте это:
If(string.IsNullOrEmpty(textbox1.Text)
&& string.IsNullOrEmpty(textbox2.Text)
&& string.IsNullOrEmpty(textbox3.Text))
{
Messagebox.Show("You need to fill all fields in");
}
else
{
Messagebox.Show("You have successfully registered");
}
Вы попробовали Valgrind? Это - профильный инструмент для Linux. Это имеет средство проверки памяти (для утечек памяти и других проблем памяти) названный Memcheck, но это имеет также профилировщика "кучи" под названием Горный массив.
Для простой статистики, только для обнаружения, где вся память используется Вы могли добавить шаблон как это:
template<class T>
class Stats {
static int instance_count;
public:
Stats() {
instance_count++;
}
~Stats() {
instance_count--;
}
static void print() {
std::cout << instance_count << " instances of " << typeid(T).name() <<
", " << sizeof(T) << " bytes each." << std::endl;
}
};
template<class T>
int Stats<T>::instance_count = 0;
Затем можно добавить это как базовый класс к классам, которые Вы подозреваете, чтобы иметь много экземпляров и распечатать статистику текущего использования памяти:
class A : Stats<A> {
};
void print_stats() {
Stats<A>::print();
Stats<B>::print();
...
}
Это не показывает Вам, в которых функциях были выделены объекты, и не предоставляет слишком много подробной информации, но это могло бы меня достаточно для определения местоположения, где память потрачена впустую.
Поскольку окна проверяют функции в "crtdbg.h". crtdbg.h содержит отладочную версию функций выделения памяти. Это также содержит функцию для обнаружения утечек памяти, повреждений, проверки законности указателей "кучи", и т.д.
Я думаю после функций, будет полезно для Вас.
_CrtMemDumpStatistics _CrtMemDumpAllObjectsSince
Следующие списки ссылок MSDN состояние "кучи" Сообщающие функции и пример кода http://msdn.microsoft.com/en-us/library/wc28wkas (По сравнению с 80) .aspx
Можно попробовать Блок проверки допустимости Памяти из http://www.softwareverify.com/cpp/memory/index.html
Это - один из лучших инструментов, с которыми я столкнулся для профилирования использования памяти. Пробная версия 30 дней доступна для бесплатной загрузки.
В предыдущем задании мы использовали инструмент под названием, "Очищают". Это - продукт, сделанный Рациональным / IBM. Я не думаю, что это - бесплатный инструмент, но я помню это являющийся довольно хорошим. Вот некоторая информация:
Существует несколько вещей, которые можно сделать. Самая простая вещь состоит в том, чтобы связать отладку malloc библиотека; существует aa количество их доступно, в зависимости от деталей Вашей среды (например, Google для _malloc_dbg для Windows.)
Второй выбор состоит в том, что можно перегрузить новый и удалить в C++; возможно перегрузить основное новое и удалить с новыми функциями, которые отслеживают выделение памяти и использование.
Глава 1.10 из Игры, Программируя Объем Драгоценных камней 2 (ссылка Amazon) детализирует простого, но эффективного Общедоступного Диспетчера памяти Отладки Peter Dalton, который обеспечивает достойный набор статистики, когда Вы выводите журнал.
Просто видел на сайте AQtime, что у них есть хорошая поддержка "Профилирования Выделения".
Глава 4.6 из Game Programming Gems Volume 8 (ссылка на предварительный просмотр Safari Book) подробно описывает расширенный профилировщик памяти от Рики Лунга, который может отображать статистику распределения в иерархической стека вызовов, но поддерживает многопоточность.