/ каталог разработчика отсутствует в Lion Xcode 4.3

this в компиляторе C ++

Компилятор C ++ будет молча искать символ, если он не находит его немедленно. Иногда, в большинстве случаев, это хорошо:

  • , используя метод материнского класса, если вы не перегружали его в дочернем классе.
  • , способствующий значению type в другой тип

Но иногда вы просто не хотите, чтобы компилятор угадал. Вы хотите, чтобы компилятор взял правильный символ, а не другой.

Для меня это время, когда в рамках метода я хочу получить доступ к методу-члену или переменной-члену. Я просто не хочу, чтобы какой-то случайный символ был поднят только потому, что я написал printf вместо print. this->printf не был скомпилирован.

Дело в том, что с C старыми библиотеками (§), устаревшим кодом, написанным много лет назад (§§), или что-то еще может произойти на языке, где копирование / вставка устаревшая, но все еще активная функция, иногда говорящая компилятору, чтобы не играть в умы, - отличная идея.

Вот причины, по которым я использую this.

(§) для меня какая-то тайна, но теперь я задаюсь вопросом, включает ли тот факт, что вы включили & lt; windows.h & gt; заголовок в вашем источнике, является причиной того, что все устаревшие символы библиотек C загрязнят ваше глобальное пространство имен

(§§), понимая, что «вам нужно включить заголовок, но этот заголовок может сломать ваш код, потому что он использует некоторые немые макросы с общим названием «является одним из тех русских рулетков моментов жизни кодера

13
задан Community 23 May 2017 в 20:24
поделиться