Начиная с IS 5.7.0 поддерживается импорт и экспорт полной конфигурации поставщика услуг в виде XML-файла. Вот соответствующая документация . Поэтому я думаю, что вы можете использовать соответствующую службу администратора (ApplicationManagementService) для импорта приложения OAuth из вашего кода.
Вы можете обратиться к этому документу , чтобы получить услугу администратора.
-> оператор является просто синтаксическим сахаром потому что (*ptr).hello()
ЛАВАШ должен ввести. С точки зрения инструкций, сгенерированных на уровне ASM, нет никакого различия. На самом деле, на некоторых языках (D приходит на ум), компилятор понимает все на основе типа. Если Вы делаете ptr.hello()
, это просто работает, потому что компилятор знает, что ptr является указателем и не имеет привет () свойство, таким образом, необходимо иметь в виду (*ptr).hello()
.
Другие уже ответили относительно встроенных указателей. Относительно классов возможно перегрузить оператор-> (), operator& (), и оператор* (), но не оператор. ().
Что означает, что объект может действовать по-другому, в зависимости от которого синтаксиса Вы звоните.
Основное преимущество с точки зрения удобочитаемости прибывает, когда необходимо объединить вызовы функции в цепочку, т.е.:
ptr->getAnotherPtr()->getAThirdPtr()->print()
Я даже не собираюсь потрудиться делать это с * оператор.
Единственная причина иметь '->'
оператор состоит в том, чтобы сделать это более удобным и сохранить ошибки как:
*ptr.hello();
Поскольку настолько легко забыть круглую скобку.
Они генерируют тот же точный машинный код, но для меня, ptr-> аргумент () намного легче считать, чем (*ptr) .arg ().
Эти альтернативные режимы синтаксиса приняты от C, и Вы могли бы получить некоторое дополнительное понимание из Учебного руководства на Указателях и Массивах в C, а именно, главе 5, Указателях и Структуре.