猿问

如下,该怎样判断a是否为空?

C#或java可以写成这样:
class a;
if(a!=null)
但C++好像不能直接用a和NULL判断
要这样判断a是否为空?

慕斯709654
浏览 189回答 3
3回答

繁星coding

java可以这样判定是因为Java中class a 声明后a是一个引用并没有分配空间,若是想分配空间还要用new,在c++中class a;这样声明后a就要看你的a是指针还是数值啦,你想判断a是否为空可以在你的默认构造函数中给个默认值,然后通过跟默认值比较

繁花如伊

  #include <iostream.h>  #include <string.h>  int main()  {  char ch[]="book";  char *p="";    int len1,len2;  len1=strlen(ch);  if(len1!=0)  cout<<" \nnot null.";  else  cout<<"\n is null";    len2=strlen(p);  if(len2!=0)  cout<<"\nnot null.";  else  cout<<"\n is null";    return 0;  }

隔江千里

先实例化比如, a test=new a(); 再判断a!=null,但是我个人认为,实例化了以后a一定不为空
随时随地看视频慕课网APP
我要回答