热门面试题与答案和在线测试
面向面试准备、在线测试、教程与实战练习的学习平台

通过聚焦学习路径、模拟测试和面试实战内容持续提升技能。

WithoutBook 将分主题面试题、在线练习测试、教程和对比指南整合到一个响应式学习空间中。

面试准备

模拟考试

设为首页

收藏此页面

订阅邮箱地址

C++ 面试题与答案

Test your skills through the online practice test: C++ Quiz Online Practice Test

相关差异对比

C vs C++Java vs C++

问题 91. What is "mutable"?

Answer1.
"mutable" is a C++ keyword. When we declare const, none of its data members can change. When we want one of its members to change, we declare it as mutable.

Answer2.
A "mutable" keyword is useful when we want to force a "logical const" data member to have its value modified. A logical const can happen when we declare a data member as non-const, but we have a const member function attempting to modify that data member. For example:
class Dummy {
public:
bool isValid() const;
private:
mutable int size_ = 0;
mutable bool validStatus_ = FALSE;
// logical const issue resolved
};

bool Dummy::isValid() const
// data members become bitwise const
{
if (size > 10) {
validStatus_ = TRUE; // fine to assign
size = 0; // fine to assign
}
}


Answer2.
"mutable" keyword in C++ is used to specify that the member may be updated or modified even if it is member of constant object. Example:
class Animal {
private:
string name;
string food;
mutable int age;
public:
void set_age(int a);
};

void main() {
const Animal Tiger(??Fulffy??,'antelope??,1);
Tiger.set_age(2);
// the age can be changed since its mutable
}

这有帮助吗? 添加评论 查看评论
 

问题 92. Differences of C and C++
Could you write a small program that will compile in C but not in C++ ?


In C, if you can a const variable e.g.
const int i = 2;
you can use this variable in other module as follows
extern const int i;
C compiler will not complain.

But for C++ compiler u must write
extern const int i = 2;
else error would be generated.

这有帮助吗? 添加评论 查看评论
 

问题 93. Bitwise Operations - Given inputs X, Y, Z and operations | and & (meaning bitwise OR and AND, respectively), what is output equal to in?


output = (X & Y) | (X & Z) | (Y & Z);

这有帮助吗? 添加评论 查看评论
 

问题 94. What is a modifier?


A modifier, also called a modifying function is a member function that changes the value of  at least one data member. In other words, an operation that modifies the state of an object. Modifiers are also known as ?mutators?. Example: The function mod is a modifier in the following code snippet:

class test
{
int x,y;
public:
test()
{
x=0; y=0;
}
void mod()
{
x=10;
y=15;
}
};

这有帮助吗? 添加评论 查看评论
 

问题 95. What is an accessor?


An accessor is a class operation that does not modify the state of an object. The accessor functions need to be declared as const operations

这有帮助吗? 添加评论 查看评论
 

2) Differences of C and C++
Could you write a small program that will compile in C but not in C++ ?
3) Bitwise Operations - Given inputs X, Y, Z and operations | and & (meaning bitwise OR and AND, respectively), what is output equal to in? 4) What is a modifier? 5) What is an accessor? " />

用户评价最有帮助的内容:

版权所有 © 2026,WithoutBook。