|
Строитель
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
|
|
Использование this в языке С++13.03.2017, 13:39. Показов 4819. Ответов 31
Метки нет (Все метки)
Кто работал с кодом this набросайте пожалуйста поучительные примеры кодов.
А также набросайте коды, где без this вообще не обойтись. Просто для общего развития хочу понять на что способен this. Добавлено через 16 минут Начинающие программисты задаются вопросом. Зачем использовать this , когда и без this Работает также. Неужели этот this нужен только для того, чтобы отделить глобальные переменные от внутриблочных или внутриклассных? То есть this указывает явно на использование внутриблочных или внутриклассных переменных.
0
|
|
| 13.03.2017, 13:39 | |
|
Ответы с готовыми решениями:
31
GeoTiff - примеры ее использования на языке c , желательно на русском языке Вычислить кусочно-линейную функцию Использование оператора Case в разветвляющемся вычислительном процессе в языке Pascal |
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||||||
| 14.03.2017, 10:31 | ||||||
|
hoggy,
Немного не ясен сам код (смысл понятен но код нет)
Так же не понятно почему в классе объявлено два указателя на метод И еще возникает вопрос как обратиться к этому this-у который передался не явно Или как бы пример что он передается но достучаться нельзя? Конечный результат понятен но до логика выполнения не очень
0
|
||||||
|
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
|
|
| 14.03.2017, 10:36 | |
|
sys_beginner, ну так вы попробуйте убрать эту строку ... .
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 14.03.2017, 10:49 | ||
Это же не объяснит мне логику выполненияДобавлено через 3 минуты И не ответит на вопрос про переданный псевдо-this
0
|
||
|
99 / 52 / 27
Регистрация: 21.05.2012
Сообщений: 1,170
|
|||||||||||
| 14.03.2017, 11:01 | |||||||||||
|
Покажу где лучше this не использовать.
Плохой код:
1
|
|||||||||||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||
| 14.03.2017, 11:49 | ||
|
1. Зачем-то дублируется параметр Rus 2. Название структуры с нижнего подчёркивания 3. Названия параметров совпадают с названием полей 4. Названия полей с большой буквы обычно не пишут (это вопрос к Code Style) 5. Неизвестно зачем вообще нужен конструктор для структуры. При необходимости можно присваивать поля напрямую или использовать список инициализации.
2
|
||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||
| 14.03.2017, 12:22 | ||
![]() Например, на основании параметра конструктора может понадобится открыть файл внутри конструктора и возможно сделать некоторые проверки, а в конце закрыть файл в деструкторе
1
|
||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 14.03.2017, 12:34 | |
|
sys_beginner, здесь приведён конкретный пример.
Добавлено через 1 минуту А вообще, для сложных конструкторов я бы скорее всего выбрал класс. Структуру использую прежде всего для объединения данных с использованием осмысленных названий.
1
|
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||||||
| 14.03.2017, 12:38 | |||||||||||
и привести указателю на функцию. строго говоря - так делать вообще нельзя. этот хак был нужен исключительно для примера. где вы вам нашли хотя бы один. вы вообще куда смотрите? this->foo(10);
0
|
|||||||||||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
||||||
| 14.03.2017, 12:51 | ||||||
![]()
0
|
||||||
| 14.03.2017, 13:47 | |
|
0
|
|
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||||||||
| 15.03.2017, 01:36 | ||||||||||||
Еще пример со слабо владеющим контейнером:
1
|
||||||||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||
| 15.03.2017, 12:23 | |||||||
0
|
|||||||
| 15.03.2017, 12:23 | |
|
Помогаю со студенческими работами здесь
32
Что даёт использование классов (и шире - ООП) в языке программирования С++? Что даёт использование классов (и шире - ООП) в языке программирования С++? (2)
Конвертер для перевода программ на языке PHP в текст программы на языке Assembler
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|