c++中静态成员变量不能够用输入流输入问题
来源:互联网 发布:手机做字素的软件 编辑:程序博客网 时间:2024/06/05 19:13
#include<iostream>using namespace std;class Demo{ public: int a; static int c;};static int b;int main(){ Demo d=Demo(); cin>>b; cout<<"b="<<b<<endl; cin>>d.a; cout<<"the result="<<d.a<<endl; //cin>>Demo::c; //error //cout<<"c="<<Demo::c<<endl; //error //Demo::c=3; //error //int Demo::c=3; //ok d.a=3; //ok //cout<<"c="<<Demo::c<<endl; //error return 0;}
首先c++中规定类的静态成员变量必须是在类中声明,在类外定义,从上面注释的处看到,直接调用赋值语句
Demo::c=3
是错误的,编译器提示不知道c的类型。在来看输入cin>>Demo.c这样为啥不行呢,可以知道,内部首先是转换成basic_istream(cin,&c),而此时编译器并不知道静态成员变量c是什么类型,traits特性不能特化成功,因此调用失败。
0 0
- c++中静态成员变量不能够用输入流输入问题
- c++:静态成员变量和静态成员函数使用问题
- c++--静态成员变量
- 实例成员变量不能在静态方法中访问
- CMD中汉字乱码、不能输入问题
- C++中静态成员函数访问成员变量问题
- C++中静态成员函数访问成员变量问题
- C++中静态成员函数访问成员变量问题
- C++中静态成员函数访问成员变量问题
- minicom不能输入问题
- C++静态成员函数不能调用非静态成员变量
- 静态成员变量初始化问题
- c++静态成员变量问题
- 静态成员变量修改问题
- C语言中实现C++静态类成员变量
- 静态函数里不能访问成员变量
- C++/Java__中类模板中的静态成员变量和静态成员函数
- 单例模式中静态类成员变量初始化问题
- Ubuntu14.04/win7 双系统,Ubuntu不能连网
- LeetCode---Merge Two Sorted Lists
- 记录1
- mac下tomcat的安装与配置
- C++Primer---模板与泛型编程(一)
- c++中静态成员变量不能够用输入流输入问题
- 【bzoj2243】 [SDOI2011]染色
- Nginx配置&负载均衡实战
- test8.16
- 每天代码五十行,今天第二天.
- Effective C++读书笔记二
- SAX操作XML
- 《机器学习实战》笔记之十三——利用PCA来简化数据
- redis导库