Эта глава будет достаточно обширной. В ней мы рассмотрим язык и среду eVC, что послужит фундаментом для следующей главы, в которой мы сможем сосредоточиться только на особенностях среды eVC++ 4.0 для Pocket PC 2003.

<p>Введение в язык или первая программа</p>

Для того, чтобы понять все инструменты среды eVC, необходимо знать язык С++. Но для того чтобы узнать С++, необходимо на нем хоть что-то написать, а для этого надо понимать, как работает среда. Поэтому сначала мы приведем пример создания первой программы, которая просто выведет на форму текст, затем кратко рассмотрим основы языка С++, и только после этого можно будет приступить к подробному изучению среды eVC. Такой порядок работы нам кажется самым оптимальным.

Упражнение 4.1

1. Запустить среду eVC и выполнить команду меню File ? New. На экран будет выведено окно New. В этом окне следует активировать вкладку Projects и на этой вкладке выбрать пиктограмму WCE Pocket PC 2002 Application. В поле ввода Project Name следует указать имя нового проекта MyExp. После этого нужно нажать кнопку OK.

2. В следующем окне мастера создания проекта нужно выбрать пиктограмму An Empty Project и нажать кнопку Finish.

3. Снова выполнить команду File ? New. В активированном диалоговом окне нужно перейти на вкладку Files и в списке выбрать C++ Source File. Затем нужно взвести флажок Add To Project и указать имя файла MyExp.

4. И еще раз выполнить команду File ? New. В диалоговом окне, которое будет выведено на экран, перейти на вкладку Files и выбрать элемент C/С++ Header File. Взвести флажок Add To Project и указать имя файла MyExp. Эти действия привели к созданию наиболее простой структуры проекта в eVC. Теперь нужно заполнить эту структуру кодом.

5. В файле MyExp.h ввести код, приведенный в листинге 4.1.

Листинг 4.1

// Блок 1

#define dim(x) (sizeof(x) / sizeof(x[0]))

// Блок 2

struct decodeUINT {

UINT Code;

LRESULT (*Fxn)(HWND, UINT, WPARAM, LPARAM);

};

// Блок 3

struct decodeCMD {

UINT Code;

LRESULT (*Fxn)(HWND, WORD, HWND, WORD);

};

// Блок 4

int InitApp (HINSTANCE);

int InitInstance (HINSTANCE, LPWSTR, int);

int TermInstance (HINSTANCE, int);

int MyPaint (HWND, UINT, WPARAM, LPARAM);

// Блок 5

LRESULT CALLBACK MainWndProc (HWND, UINT, WPARAM, LPARAM);

// Блок 6

LRESULT DoDestroyMain (HWND, UINT, WPARAM, LPARAM);

LRESULT CharRec (HWND, UINT, WPARAM, LPARAM);

ВНИМАНИЕ! Не забывайте как можно чаще нажимать кнопку Save All в процессе ввода кода. Набирать такой объем кода второй раз после сбоя питания – не самое веселое занятие.

Перейти на страницу:

Похожие книги