typedef - ваш друг
. Вернувшись и посмотрев на многие другие ответы, я обнаружил, что более глубокое объяснение в порядке, так как многие другие ответы либо страдают от проблем с производительностью, либо вынуждают вас используйте необычный или обременительный синтаксис для объявления массива или доступа к элементам массива (или всему выше).
Во-первых, этот ответ предполагает, что вы знаете размеры массива во время компиляции. Если вы это сделаете, то это лучшее решение, так как оно обеспечит максимальную производительность и позволит использовать стандартный синтаксис массива для доступа к элементам массива.
Причина, по которой это дает лучшую производительность, заключается в том, что она распределяет все массивы как непрерывный блок памяти, что означает, что у вас, вероятно, будет меньше пропусков страниц и лучшая пространственная локальность. Выделение в цикле может привести к тому, что отдельные массивы будут разбросаны по нескольким несмежным страницам через пространство виртуальной памяти, поскольку цикл выделения может быть прерван (возможно, несколько раз) другими потоками или процессами или просто из-за усмотрения распределитель заполняет небольшие, пустые блоки памяти, которые, как оказалось, доступны.
Другими преимуществами являются простой синтаксис объявления и стандартный синтаксис доступа к массиву.
В C ++ с использованием нового:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv) {
typedef double (array5k_t)[5000];
array5k_t *array5k = new array5k_t[5000];
array5k[4999][4999] = 10;
printf("array5k[4999][4999] == %f\n", array5k[4999][4999]);
return 0;
}
Или C-стиль с использованием calloc:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv) {
typedef double (*array5k_t)[5000];
array5k_t array5k = calloc(5000, sizeof(double)*5000);
array5k[4999][4999] = 10;
printf("array5k[4999][4999] == %f\n", array5k[4999][4999]);
return 0;
}
Существует два типа веб-приложений в ASP.NET: веб-сайт и веб-приложение Проект. Различие между этими двумя обсуждено здесь:
Различие между веб-сайтом и веб-приложениями в Visual Studio 2005
Преобразуйте в Веб-сайт, позволяет Вам преобразовывать веб-приложение Проект в веб-сайт.
2003 Visual Studio использовал стиль Проекта веб-приложения, но первоначально VS2005 только поддерживал веб-сайты. VS2005 SP1 возвратил веб-приложения.
Если Вы не хотите преобразовывать свой проект в веб-сайт, применять SP1 при использовании VS2005. VS2008 может поддерживать также.
Преобразуйте в Веб-сайт перемещения все свои объявления управления от основного класса страницы до вторичного файла (yourpage.aspx.designer.cs).
Это делает это при помощи частичного класса. Таким образом, тот же класс для Вашей страницы, но разделенный на два отдельных файла.
Это позволяет VS2k5 (и VS2k8) разработчик генерировать код для Ваших страниц, не выводя сгенерированные спагетти кода в основной файл класса.
Вы не должны делать этого шага для разрабатывания проекта, но если Вы продолжите поддерживать проект, то Вы захотите также.
Править:
Эй посмотрите, MSDN создает резервную копию меня:
Преобразовать код для использования модели частичного класса
Существует два типа веб-приложений в ASP.NET: веб-сайт и веб-приложение Проект. Преобразуйте в Веб-сайт, позволяет Вам преобразовывать веб-приложение Проект в веб-сайт.
Насколько я могу вспомнить, Преобразовать в Веб-сайт, не делает этого, проект веб-приложения является структурой регулярного применения с Вашим типичным \bin и т.д.
Проект WebSite вместо этого основан на понятии каталога App_Code для классов и каталога App_Date для данных, с Вашими регулярными файлами ASPX, идущими где угодно. Идея состоит в том, чтобы избежать необходимости предварительную компиляцию в DLL перед развертыванием, которое может быть легче в некоторых совместно использованные ситуации с хостингом.
Я не знаю ни о каком мастере, который реструктурирует проект между этими типами, но я могу быть неправым.
Единственная вещь, которую Вы, возможно, пропустили, состояла в том, хотели ли Вы сделать резервное копирование проекта 2003 года (на всякий случай). Это не грандиозное предприятие.
Выезд:
Преобразование веб-проекта Visual Studio.NET 2003 года к веб-приложению Visual Studio проект
Преобразуйте в Веб-сайт перемещения все свои объявления управления от основного класса страницы до вторичного файла (yourpage.aspx.designer.cs).
Почему я хотел бы сделать это? Это достаточно плохо, что существует .js .css .vb .aspx файл для каждой страницы. Я должен действительно разделить .vb на еще два файла именно так, я могу скрыть объявления? page.designer.aspx.vb.h кто-либо?