| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3480 人关注过本帖
标题:类数据成员初始化
只看楼主 加入收藏
easygo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-11-21
结帖率:0
收藏
已结贴  问题点数:10 回复次数:6 
类数据成员初始化
类中私有成员是静态字符串的数据成员,要怎样对其初始化呢
搜索更多相关主题的帖子: 字符串 
2016-04-11 18:40
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:5 
静态?那定义时给初值呀
我猜你说的是const char[],如果是,根本不需要数组,指针就行了
2016-04-11 19:49
easygo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-11-21
收藏
得分:0 
回复 2楼 rjsp
我说的不是const,是static,静态数据成员
2016-04-11 20:23
alice_usnet
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:18
帖 子:370
专家分:2020
注 册:2016-3-7
收藏
得分:5 
程序代码:
#include <iostream>
#include<string>
using namespace std;
class a{
public:
  void print(){std::cout<<s<<std::endl;}
private:
    static string s;
};
string a::s;

int main()
{
    a b;
    b.print();
}

字符串对象s会调用string类的默认构造函数。

未佩好剑,转身便已是江湖
2016-04-11 20:42
easygo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-11-21
收藏
得分:0 
回复 4楼 alice_usnet
那能不能直接    string a::s='abc';
2016-04-11 21:05
easygo
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2015-11-21
收藏
得分:0 
我试了试,不行,那要怎么直接初始化
2016-04-11 21:08
alice_usnet
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:18
帖 子:370
专家分:2020
注 册:2016-3-7
收藏
得分:0 
程序代码:
#include <iostream>
#include<string>
using namespace std;
class a{
public:
  void print(){std::cout<<s<<std::endl;}
private:
    static string s;
};
string a::s("abc");  //调用string类带参数的构造函数

int main()
{
    a b;
    b.print();
}

未佩好剑,转身便已是江湖
2016-04-11 21:22
快速回复:类数据成员初始化
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016692 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved