类构造函数中的全局变量,是让其影响小一点好,还是大一点好。

tree2000 2007-04-20 10:55:48
如下代码:

// 1,所有函数成员存取全局变量为默认值,全局变量全局影响。
class TAClass
{
public:
TAClass( String Param1 )
{
F_Param1 = Param1;
}
~TAClass( );

private:
String F_Param1;
// 如果产生新的处理Param的函数,其后,函数成员的处理对象也改为新的Param.
void Create_New_ACalss( New_Param1 )
{
F_Param1 = New_Param1;
}

public:
String Get_Data1( void )
{
String Data1;
if( F_Param1 == "" )
{
Data1 = "Blank";
}
return Data1;
};

String Get_Data2( void )
{
String Data2;
if( F_Param1 == "A1" )
{
Data2 = "Not Blank";
}
return Data2;
};
}

//---------------------------------------------------------
// 各函数成员只受自己参数的影响。
// 如果是公有函数,必须在外部传入参数;
// 问题是,如果传入的是一个与构造函数不同的参数也会处理。
//---------------------------------------------------------
class TAClass
{
public:
TAClass( String Param1 );
~TAClass( );
private:
String F_Param1;


public:
void Create_ANewParam( String New_Param )
{
F_Param1 = New_Param;
}

String Get_Data1_On_Param1( String Param1 )
{
String Data1;
if( Param1 == "" )
{
Data1 = "Blank";
}
return Data1;
};

String Get_Data2_On_Param1( String Param1 )
{
String Data2;
if( Param1 == "A1" )
{
Data2 = "Not Blank";
}
return Data2;
};
}
//---------------------------------------------------------

但到底哪一个好呢?
...全文
211 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sun3411 2007-04-20
  • 打赏
  • 举报
回复
2情况 一般是用static函数吧
lidongri 2007-04-20
  • 打赏
  • 举报
回复
一般情况下,2比较好
但正如taodm所说,根据需求来进行调整是正确的
taodm 2007-04-20
  • 打赏
  • 举报
回复
这是由需求决定的。看在什么时候可以获得所需信息,和执行动作时的代码统一度。
FingerStyle 2007-04-20
  • 打赏
  • 举报
回复
1吧
freshui 2007-04-20
  • 打赏
  • 举报
回复
两个都留着

64,662

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧