Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как победить конфликт имен.

30K
23 мая 2012 года
asmel
50 / / 05.03.2009
Код:
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
//---------------------------------------------------------------------------
#include <shlwapi.h>
#include <io.h>
#include <errno.h>
#include <process.h>
#include <stdlib.h>
#include <string.h>
#include <tchar.h>
#include <vcl.h>
#include <stdio.h>
#include <winuser.h>
#include <shellapi.h>
#include <windows.h>
#include <winbase.h>
#include "Tlhelp32.h"
//---------------------------------------------------------------------------
using namespace std;
//---------------------------------------------------------------------------
       using namespace std;
     void __fastcall TForm1::Button4Click(TObject *Sender)
{
         HWND hWnd;
         HDC hDC = GetDC (hWnd);
         RECT rc;

         GetClientRect(hWnd, &rc); // Получаем размер клиентской области окна

         ReleaseDC (hWnd, hDC);   // Освобождаем DC
}
//---------------------------------------------------------------------------

Ошибка в строке GetClientRect(hWnd, &rc);

[C++ Error] Unit1.cpp(255): E2227 Extra parameter in call to_fastcall TCustomForm::GetClientRect()

Опыта никакого. Измучился вдрызг!!!!!!!!!!!!
277
23 мая 2012 года
arrjj
1.7K / / 26.01.2011
Просто
::GetClientRect(hWnd, &rc);
1
23 мая 2012 года
kot_
7.3K / / 20.01.2000
Указать явно из какого пространства имен нужна фукция:

 
Код:
Windows::GetClientRect...
30K
23 мая 2012 года
asmel
50 / / 05.03.2009
Реакция такая

 
Код:
RECT rc;
Windows::GetClientRect(hWnd, &rc);
[C++ Error] Unit1.cpp(218): E2316 'GetClientRect' is not a member of Windows'
30K
23 мая 2012 года
asmel
50 / / 05.03.2009
Цитата: arrjj
Просто
::GetClientRect(hWnd, &rc);


Огромное спасибо. А почему так.? Пытаюсь понять логику.

277
23 мая 2012 года
arrjj
1.7K / / 26.01.2011
Пространство_имен::имя(функция/переменная/итд)
Если пространство имен не указано перед :: - берется из глобального пространства имен.
f.e.
Код:
void a();

class b{
    static void a();
    void b()
{
//Вариант 1 - не указан модификатор пространства имен
//сначала ищем в локальном пространстве имен, если не находим то в глобальном
a();
//Вариант 2 - явно указать локальное пространство имен
b::a();
//Вариант 3 - явно указать глобальное пространство имен
::a();
}
}
подробнее - в гугле
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог