Чтобы решить эту проблему, вам нужно зафиксировать заглавные буквы в ваших полях и методах в вашем классе Users
в соответствии с Соглашениями об именах Java . Таким образом, ваш класс модели должен выглядеть следующим образом:
public class Users {
String studentName, rollNumber;
public Users(){}
public Users(String studentName, String rollNumber) {
this.studentName = studentName;
this.rollNumber = rollNumber;
}
public String getStudentName() {
return studentName;
}
public void setStudentName(String studentName) {
this.studentName = studentName;
}
public String getRollNumber() {
return rollNumber;
}
public void setRollNumber(String rollNumber) {
this.rollNumber = rollNumber;
}
}
Удалите старые данные, добавьте новые данные, и все будет работать нормально.
Используя std::auto_ptr
хорошая практика, на самом деле такой пример был предложен Bjarne Stroustrup.
Семантика перемещения auto_ptr
дает Вам правильные инструменты для контакта с ним.
Например:
auto_ptr<Foo> make_foo()
{
return auto_ptr<Foo>(new Foo);
}
Foo *raw_pointer=make_foo().release();
shared_ptr<Foo> shared_pointer=make_foo();
auto_ptr<Foo> auto_pointer=make_foo();
Если Вы возвращаетесь shared_ptr
Вы не можете нейтрализация к нормальному указателю, с auto_ptr
Вы можете. Можно всегда обновлять auto_ptr
к общему, но не другому направлению.
Другой важный момент, shared_ptr
использует атомарный подсчет ссылок, который намного медленнее что простое и все же полностью эффективное задание это auto_ptr
делает.
P.S.: scoped_ptr
просто версия auto_ptr
для poors---это - non-copyable и не имеет значения по умолчанию constuctor. Это больше похоже на "менее запутывающую" версию auto_ptr
, по сравнению с shared_ptr
это не находится в tr1. Обычно там не очень преимущества использования scoped_ptr
auto_ptr
Если Вы создаете фабрику, это в порядке, что Вы просто возвращаете указатель. И пользователь Вашей фабрики может принять свое собственное решение, как к и куда поместить этот указатель.
Если необходимо осуществить для использования интеллектуального указателя, необходимо ограничить выбор, поскольку Вы не хотите, чтобы они использовали "неправильные".
Так повышение:: shared_ptr. Но лучше к определению типа это затем к MyClassPtr или MyClass:: ptr.
Однако, фабрики они похожи "новые". Когда я хочу, я поместил результат новых в станд.:: auto_ptr. Но я не хочу быть вынужденным назвать "выпуск" всеми временами, когда я не хочу интеллектуального указателя.