网站首页 > 基础教程 正文
在C ++中,类变量的初始化顺序与它们在类声明中显示的顺序相同。
看一下下面的代码:
#include<iostream>
using namespace std;
class Test {
private:
int y;
int x;
public:
Test() : x(10), y(x + 10) {}
void print();
};
void Test::print()
{
cout<<"x = "<<x<<" y = "<<y;
}
int main()
{
Test t;
t.print();
getchar();
return 0;
}
该程序打印正确的x值,但会打印y的一些垃圾值,因为y在x之前在类声明中出现之前被初始化。
因此,可以使用以下两个版本之一来避免上述代码中的问题。
代码一:
class Test {
private:
int x;
int y;
public:
Test() : x(10), y(x + 10) {}
void print();
};
代码二:
class Test {
private:
int y;
int x;
public:
Test() : x(y-10), y(20) {}
void print();
};
以上就是今天的全部内容了。每日分享小知识,希望对你有帮助~
另外如果你想更好地提升你的编程能力,学好C语言C++编程!弯道超车,快人一步!笔者这里或许可以帮到你~
编程学习书籍分享:
编程学习视频分享:
分享(源码、项目实战视频、项目笔记,基础入门教程)
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!
点击下方【了解更多】免费获取更多学习资料哦~
猜你喜欢
- 2024-10-10 C++系列1-1:初探C++ c=2μf
- 2024-10-10 浅谈C++11(第9篇 可变参数模板) c++可变参数模板类
- 2024-10-10 数组的初始化方式有哪几种? 数组的初始化是什么意思
- 2024-10-10 c++对于内建类型的默认初始化 创建内部类的对象
- 2024-10-10 C++类构造函数,如何初始化对象?linux C++第27讲
- 2024-10-10 【C++编程语言】之 类和对象——对象的初始和消除
- 2024-10-10 C++基础语法梳理:引用、封装、继承和多态
- 2024-10-10 C++核心准则?:按照成员声明的顺序定义和初始化成员变量
- 2024-10-10 C++核心准则C.47:按照成员变量声明的次序定义和初始化数据成员
- 2024-10-10 C/C++语言编程系列002——不同情况下数组的初始化方法
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)