Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
#1

подскажите с using namespace - C++

16.08.2013, 21:48. Просмотров 320. Ответов 6
Метки нет (Все метки)

все что ниже написано - это части класса myclass
C++
1
2
3
4
5
struct marked_area
 {  long double L[e1]; 
     int t[e1][2];      
    int num; // кол-во выбранных уч-ов
 };
есть такая штука
C++
1
marked_area *MA;
есть ф-ция
C++
1
2
3
4
5
6
7
void myclass::area_writing( int ii, int jj )
 { using namespace marked_area ; // здесь ошибка!!
   MA->L[MA->num] =  mesh[q][ii][jj].L;
   MA->t[MA->num][0] = ii;
   MA->t[MA->num][1] = jj;
   MA->num++;
 }
вот как в этой ф-ции сделать по-красоте, чтобы using namespace как-нибудь и чтобы не писать всё время MA->
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2013, 21:48     подскажите с using namespace
Посмотрите здесь:

C++ using namespace std
C++ namespace
вопрос по using namespace C++
using namespace std; C++
C++ Namespace
namespace C++
std:: vs namespace C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
16.08.2013, 21:53     подскажите с using namespace #2
C++
1
2
3
4
5
6
7
8
void myclass::area_writing( int ii, int jj )
{
    marked_area& m = *MA;
    m.L[MA->num] =  mesh[q][ii][jj].L;
    m.t[MA->num][0] = ii;
    m.t[MA->num][1] = jj;
    m.num++;
 }
Croessmah
Модератор
Эксперт CЭксперт С++
12702 / 7176 / 801
Регистрация: 27.09.2012
Сообщений: 17,702
Записей в блоге: 2
Завершенные тесты: 1
16.08.2013, 21:53     подскажите с using namespace #3
Цитата Сообщение от soican Посмотреть сообщение
using namespace marked_area ; // здесь ошибка!!
Это не пространство имен - это класс
Tulosba
:)
Эксперт С++
4387 / 3230 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
16.08.2013, 21:56     подскажите с using namespace #4
marked_area это не пространство имен, поэтому писать MA-> придется в любом случае.
В С++ нет конструкций типа with (емнип) из паскаля.

Добавлено через 1 минуту
Jupiter, один фиг, переменную указывать надо. В данном случае сокращения кода (символов) и вовсе нет.
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
16.08.2013, 22:26     подскажите с using namespace #5

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
один фиг, переменную указывать надо
ну не телепатически же её указывать



Добавлено через 50 секунд
Tulosba, давай забацай как надо
Tulosba
:)
Эксперт С++
4387 / 3230 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
16.08.2013, 22:39     подскажите с using namespace #6
Jupiter, тут бацать нечего. Ясно, что ТС хочет подход как в паскале. А вводить однобуквенную переменную вместо более длинного (но не менее убогого) идентификатора в данном случае смысла нет.
А раз уж меняешь MA на m, то и менять надо везде:
C++
1
2
3
4
5
6
7
8
void myclass::area_writing( int ii, int jj )
{
    marked_area& m = *MA;
    m.L[m.num] =  mesh[q][ii][jj].L;
    m.t[m.num][0] = ii;
    m.t[m.num][1] = jj;
    m.num++;
 }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.08.2013, 15:01     подскажите с using namespace
Еще ссылки по теме:

namespace C++
namespace C++
namespace std C++
C++ Побаловаться с namespace
C++ Использование namespace

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
soican
49 / 23 / 1
Регистрация: 16.11.2011
Сообщений: 329
Записей в блоге: 5
17.08.2013, 15:01  [ТС]     подскажите с using namespace #7
всё, я понял, здесь по-красоте не сделаешь, не изучал паскаля, но там видимо подсуетились и сделали по красоте
Yandex
Объявления
17.08.2013, 15:01     подскажите с using namespace
Ответ Создать тему
Опции темы

Текущее время: 23:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru