Я всегда использую this
при вызове функций [].
self
является обязательным, поэтому для меня это не является реальной нагрузкой. Но для членов данных я использую это только тогда, когда это необходимо, потому что ADL не происходит. Чтобы ответить на ваши конкретные вопросы:
В рамках функции-члена класса в C ++ это имеет значение, если я использую this-> dataMember или просто dataMember?
blockquote >Да, если это внутри шаблона класса. Тогда
dataMember
считается необязательным именем, что может привести к семантическим различиям. Например:#include <iostream> int i = 1; struct R { int i; R(): i(2) { } }; template<typename T> struct S: T { void f() { std::cout << i << ' ' // selects ::i << this->i // selects R::i << std::endl; } }; int main() { S<R>().f(); }
Что считается лучшим стилем?
blockquote>Я не думаю, что в сообществе есть сильное мнение об этом. Использовать любой стиль, но быть последовательным.
Есть ли разница в производительности?
blockquote>Я уверен, что нет.
Я думаю, что нет способа продолжить массовую вставку после сбоя транзакции. Если вам нужно сохранить все оставшиеся значения, вы должны сохранить каждое значение отдельно в методе save()
, отмеченном как @Transactional(propagation = Propagation.REQUIRES_NEW)
, взгляните на документы . Вы также должны поймать DataIntegrityViolationException
где-нибудь, пока он еще не сломается.