C++ вопросы и ответы для интервью
Связанные сравнения
Вопрос 51. Explain which of the following declarations will compile and what will be constant - a pointer or the value pointed at: * const char *
* char const *
* char * const
Note: Ask the candidate whether the first declaration is pointing to a string or a single character. Both explanations are correct, but if he says that it?s a single character pointer, ask why a whole string is initialized as char* in C++. If he says this is a string declaration, ask him to declare a pointer to a single character. Competent candidates should not have problems pointing out why const char* can be both a character and a string declaration, incompetent ones will come up with invalid reasons.
Вопрос 52. You?re given a simple code for the class Bank Customer. Write the following functions:
* Copy constructor
* = operator overload
* == operator overload
* + operator overload (customers? balances should be added up, as an example of joint account between husband and wife)
Note:Anyone confusing assignment and equality operators should be dismissed from the interview. The applicant might make a mistake of passing by value, not by reference. The candidate might also want to return a pointer, not a new object, from the addition operator. Slightly hint that you?d like the value to be changed outside the function, too, in the first case. Ask him whether the statement customer3 = customer1 + customer2 would work in the second case.
Вопрос 53. What problems might the following macro bring to the application?
#define sq(x) x*x
Вопрос 54. Anything wrong with this code?
T *p = new T[10];
delete p;
Everything is correct, Only the first element of the array will be deleted?, The entire array will be deleted, but only the first element destructor will be called.
Вопрос 55. Anything wrong with this code?
T *p = 0;
delete p;
Yes, the program will crash in an attempt to delete a null pointer.
* char const *
* char * const 2) You?re given a simple code for the class Bank Customer. Write the following functions:
* Copy constructor
* = operator overload
* == operator overload
* + operator overload (customers? balances should be added up, as an example of joint account between husband and wife) 3) What problems might the following macro bring to the application? 4) Anything wrong with this code? 5) Anything wrong with this code?
T *p = 0;
delete p; " />
Самое полезное по оценкам пользователей:
- What is C++?
- What is function overloading and operator overloading?
- What is the difference between declaration and definition?
- How do you find out if a linked-list has an end? (i.e. the list is not a cycle)
- What is the difference between realloc() and free()?