Задачи, связанные с программированием (алгоритмы, трюки и т.п.) - страница 4

 
anonymous:

Верно. 

Немного не правильно - не все переменные переданы; правильно:

printf("%d", printf("%*d%*d", a, 0, b, 0));

 или чтобы нули не использовать, можно заменить их а и\или b

 

Был на одном форуме, кинулось в глаза, ответов нет, цитирую:


2. Если метод f используется только одним методом класса Т и не должен входить в интерфейс класса, какое объявление метода предпочтительнее?

1)
class T{
public:
void f(int a);
...};
2)
class T{
void f(int a);
...};
3. Есть ли ошибки? Если да то какие?
class T{
public:
int p =5;
void f(int a){...}
};
.....
T tt;
tt.f(tt.p);
4. Есть ли ошибки? Если да то какие?
class T{
int p;
public: void f(int a){...}
};
....
const T tt;
tt.f(2);
5. Какой вариант правильный?
1)
class T{
...
public: T* f() {return this;}
...};
2)
class T{
...
public: T* f() {return *this;}
...};
6. Сколько раз и где вызывается конструктор копирования при вызове метода f? Есть ли ошибки, если да поясните.
class T{...
public: T f(T t){
return t;}...};
7. Элемент класса имеет спецификатор доступа public. Какие их перечисленных далее функций имеют к нему доступ?
1) Методы этого же класса
2) Дружественные функции класса
3) Методы класса производного от данного класса
4) Обычные функции

8. Дайте названия каждому конструктору. Какие из конструкторов будут вызваны?
class T{... public: T(int = 0, int =0); T(double); T(const T&);...};
... T tt, ttt=tt;
9. В чем отличие работы конструктора T(char*);?
1)
class T{... public: T(char*); ...};
2)
class T{... public: explicit T(char*); ...};
10. Какой из модификаторов: const, virtual или static можно использовать при описании деструктора?

11. Можно ли пользоваться статическими методами класса, не создав ни одного объекта этого класса?

12. Где определяется дружественная классу T функция?

13. В каком случае перегрузка операции может осуществляться только как метод класса?

14. Функция - операция реализована как дружественная классу Т функция/
Как измениться объявление функции-операции, если её надо переделать в метод этого класса?

friend T& operator ++ (T&);
15. Есть ли ошибки в объявлении функции - операции класса Т? (Если да, то какие?)
static bool operator < (T&);
16. Какая операция перегружается?
operator float();
17. Пусть класс ТТ должен быть производным от класса Т. Определите заголовок класса ТТ для случая защищенного наследования.

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

19. Зачем рекомендуется делать виртуальными деструкторы?

20. Пусть в заголовочном файле "t.h" объявлен шаблон класса template<class D = int> class T {...};
Где можно определить методы этого класса?

21. В функции f() порождается исключение throw "Ошибка ввода". Как должна выглядеть конструкция try-catch, чтобы это исключение было обнаружено и обработано (информация об исключении выведена на консоль)

22. Как будет выглядеть определение (достаточно заголовка) дружественной функции, перегружающей операцию вывода в поток для класса Т?

Причина обращения: