c++常函数
时间: 2023-08-13 15:21:44 浏览: 45
C++中的常函数是指那些不会修改对象数据的成员函数。在常函数中,this指针是一个指向常对象的指针,因此不能修改对象的成员变量。常函数可以通过在函数声明后面加上const关键字来指定,如下所示:
```
class MyClass {
public:
void normalFunc() {
// 可以修改对象的成员变量
}
void constFunc() const {
// 不能修改对象的成员变量
}
};
```
在常函数中,不能调用非常函数,因为非常函数可能会修改对象的成员变量。如果尝试在常函数中调用非常函数,编译器会报错。例如:
```
class MyClass {
public:
void normalFunc() {
// 可以修改对象的成员变量
}
void constFunc() const {
// 不能修改对象的成员变量
normalFunc(); // 错误:不能在常函数中调用非常函数
}
};
```
常函数在C++中非常有用,因为它可以确保对象的数据不被修改。
相关问题
C++常成员函数
在C++中,常成员函数是指在函数后面加上const关键字的成员函数。常成员函数保证了函数内部不会修改对象的成员变量,因此常成员函数只能访问对象的成员变量,而不能修改它们。常成员函数的语法格式如下:
```cpp
class MyClass {
public:
void func() const;
};
```
在上面的代码中,`func()`是一个常成员函数,`const`关键字表示这个函数不会修改对象的成员变量。在常成员函数中,不能调用非常成员函数,因为非常成员函数可能会修改对象的成员变量。
c++ system函数
C++中的system函数是一个非常有用的函数,它可以用于执行操作系统命令。该函数的原型如下:
```c++
int system(const char* command);
```
其中,command参数是一个字符串,表示要执行的命令。该函数返回一个整数值,表示命令的执行结果。
下面是两个使用system函数的C++程序示例:
1.清屏并输出一句话
```c++
#include <bits/stdc++.h>
using namespace std;
int main() {
cout << "HELLO WORLD\n";
system("pause");
system("cls");
cout << "给个点赞+关注吧!";
system("pause");
system("color 0A");
return 0;
}
```
该程序会在输出"HELLO WORLD"后暂停,然后清屏并输出"给个点赞+关注吧!",最后再次暂停并将控制台颜色设置为绿色。
2.暂停并清屏
```c++
#include <bits/stdc++.h>
using namespace std;
int main() {
cout << "HELLO WORLD\n";
system("pause");
system("cls");
cout << "给个点赞+关注吧!";
return 0;
}
```
该程序会在输出"HELLO WORLD"后暂停,然后清屏并输出"给个点赞+关注吧!",最后直接退出程序。