- 主题:静态成员问题
2.0是第二个还是儿的谐音?
【 在 DorD 的大作中提到: 】
: btw:这是我家2.0在用我的账号登录提问,主要我不是cs专业,麻烦各位兄弟们帮帮他!
--
FROM 117.143.144.*
【 在 easior 的大作中提到: 】
: 这俩不等价,因为调用形参构造对象的时机不同
: 正确的应该采用第一种构造函数——形参列表形式
: 第二种构造时可能无法及时获得形参值
: ...................
第一种定义是规范的形式对吗?
--
FROM 36.143.165.*
【 在 z16166 的大作中提到: 】
: 对啊,就是不要用老式的语法了。用新的,避免出错
:
#include<iostream>
using namespace std;
class A
{
public:
static int a;
};
int a=1;
int main()
{
cout<<A::a<<endl;
return 0;
}
写成了这样,无语法错误,但还是编译通不过。
--
FROM 36.143.165.*
是的
【 在 DorD 的大作中提到: 】
: 第一种定义是规范的形式对吗?
--
FROM 117.143.144.*
【 在 DorD 的大作中提到: 】
: 标 题: Re: 静态成员问题
: 发信站: 水木社区 (Sat Oct 5 15:46:42 2024), 站内
:
: #include<iostream>
: using namespace std;
:
: class A
: {
: public:
: static int a;
:
: };
: int a=1;
把上面这行改成
int A::a = 1;
: int main()
: {
:
: cout<<A::a<<endl;
: return 0;
: }
: 写成了这样,无语法错误,但还是编译通不过。
: --
:
: ※ 来源:·水木社区
http://www.mysmth.net·[FROM: 36.143.165.*]
--
FROM 117.143.144.*
【 在 easior 的大作中提到: 】
: 这俩不等价,因为调用形参构造对象的时机不同
: 正确的应该采用第一种构造函数——形参列表形式
: 第二种构造时可能无法及时获得形参值
: ...................
如果是不定义形参,可以这样写吗? A( ):name( ),age( )
前面括号里是空的,后边括号里不用写0
--
FROM 36.143.165.*
无参构造函数,就没有形参初始化列表
若要给数据成员赋值,就放到它的花括号内
【 在 DorD 的大作中提到: 】
: 如果是不定义形参,可以这样写吗? A( ):name( ),age( )
: 前面括号里是空的,后边括号里不用写0
--
FROM 117.143.144.*
【 在 easior 的大作中提到: 】
: :
: 把上面这行改成
: int A::a = 1;
天哪!您真是神欸
--
FROM 36.143.165.*
class A {
public:
static constexpr int a{1};
static inline int b{2};
};
【 在 DorD 的大作中提到: 】
: #include<iostream>
: using namespace std;
: class A
: ...................
--
FROM 114.241.228.*
【 在 supproton 的大作中提到: 】
: 静态类Java才有,本身就是实例,而且一直存在。
超纲了...,C++没有这吧,估计能让人疯掉
--
FROM 36.143.165.*