void MyQuery(CString str1,CString& str2)
准备写一个这样的函数,str1是查询用的语句,str2是查询后的返回结果
比如:
Cstring a,b;
MyQuery(a,b);
但有时候不需要返回结果,只需要str1的参数就够了
比如:
Cstring a;
MyQuery(a);但是想写成默认参数的形式CString& str2=""或者CString& str2=NULL都不行
这样的情况该怎么定义这个函数呢?
准备写一个这样的函数,str1是查询用的语句,str2是查询后的返回结果
比如:
Cstring a,b;
MyQuery(a,b);
但有时候不需要返回结果,只需要str1的参数就够了
比如:
Cstring a;
MyQuery(a);但是想写成默认参数的形式CString& str2=""或者CString& str2=NULL都不行
这样的情况该怎么定义这个函数呢?
这样的传递不是很舒服。
用指针。
引用不能为空。
void MyQuery(CString str1,CString *pstr2 = NULL);
CString MyQuery(const CString str);要判断成功与否的话,在函数里抛出异常,我个人觉得用参数查询返回值,维护起来麻烦多个返回值的话,就用新建一个结构体^_^
//声明
void MyQuery(CString str1, TCHAR *pstr2 = NULL);
//定义
void MyQuery(CString str1, TCHAR *pstr2)
{}
//调用
MyQuery("ddd");