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

Не понимаю назначение некоторых операторов С++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не компилируется код с именем структуры без заглавной первой буквы http://www.cyberforum.ru/cpp-beginners/thread951468.html
Почему компилятор не компилирует код с именем структуры, которое начинается со строчной буквы? Linux (Ubuntu 12.04). Компилятор gcc, версия 4.6.3. Запускаю код и получаю: $ g++ 09.cpp -o 09 09.cpp:16:11: ошибка: переменная или поле «swap» объявлено void 09.cpp:16:16: ошибка: expected primary-expression before «,» token 09.cpp:16:23: ошибка: expected primary-expression before «)» token
C++ 64-х и 32-х битные системы Пишу в MSVS 2012 на Windows 8... интересует вопрос, почему программа не запускается на 32-х битных системах? Пишет данное приложение не является приложением win32 http://www.cyberforum.ru/cpp-beginners/thread951467.html
Сравнить уравнения и вывесети какое больше и какое меньше C++
А= 0,35 Х=0,21 вот что получилось в начале: #include <iostream> #include <math.h> using namespace std; int main() {
Двусвязный линейный список C++
Мне нужно написать класс двусвязный список со всеми базовыми методами. У меня есть несколько проблем: во-первых, удаление из хвоста работает, но кроме случая, когда остался один элемент; во-вторых, при удалении элемента по заданному ключу возникает утечка; в-третьих, я не имею понятия, как инвертировать список. #include <vld.h> #include <iostream> class List{ struct Node{ int data;
C++ задача на иерархию классов http://www.cyberforum.ru/cpp-beginners/thread951435.html
Разработать иерархию классов, описывающих пространственную модель здания («лабиринт»). В качестве отдельных элементов модели использовать понятия «комната», «дверь», «стена», «этаж» и т.д. Сформировать из объектов классов пространственную модель кафедры «ИЛА». Выводить по запросу путь из одной определяемой пользователем комнаты в другую
C++ Объясните запись std::cout<<a%10<<(a/10)%10<<a/100<<std::endl; Этот код отображает трёхзначное число задом-наперёд, тоесть изменяет последовательность цифр числа. Но не могу понять, как оно работает?) Что означает каждый символ хотя бы в общих чертах? подробнее

Показать сообщение отдельно
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
10.09.2013, 17:09     Не понимаю назначение некоторых операторов С++
покажу на примере

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
struct MyStruct
{
    int n;
};
 
 
int main()
{
    MyStruct obj;
    MyStruct *p = &obj;
 
    obj.n = 10;     // запишем число
    p->n = 20;      // то же самое, но через указатель
 
    cout << obj.n << " " << p->n << endl;
 
}
Добавлено через 4 минуты
::

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
namespace MyNameSpace
{
 
    struct MyStruct
    {
        int n;
    };
 
}
 
int main()
{
    MyNameSpace::MyStruct obj;
    MyNameSpace::MyStruct *p = &obj;
    MyStruct obj2;  // здесь ошибка. потому что структура находится в пространстве имен MyNameSpace
 
    obj.n = 10;     // запишем число
    p->n = 20;      // то же самое, но через указатель
 
    cout << obj.n << " " << p->n << endl;
Добавлено через 5 минут
к статическим переменным и функциям в структуре/классе можно обращаться через :: (даже если нет ни одного объекта)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
struct MyStruct
{
    static double x;
};
 
double MyStruct::x = 0;
 
 
int main()
{
    MyStruct::x = 5.5;
 
    cout << MyStruct::x << endl;
}

Добавлено через 7 минут
если коротко
abc.def - это доступ к элементу def структуры через объект
abc->def - это тоже доступ к элементу def структуры, но через указатель

Добавлено через 1 минуту
abc::def - как правило, доступ к статической переменной или к статической функции в классе
 
Текущее время: 09:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru