读书人

关于std:string作参数的有关问题

发布时间: 2012-05-24 11:55:41 作者: rapoo

关于std::string作参数的问题
func(const char * p_str)
{
}
func(const std::string & str)
{
}
C++程序一般用那个好?
第二种 传入NULL会运行时死机。(NULL在程序中定义为:0),原来一直习惯用第二种。

[解决办法]
这确实是个让人郁闷的问题
我也一直用第二种
但是没有传过NULL
[解决办法]
其实用指针和引用,完全是出于习惯和公司的规范,因为二者的实现都是一样的。
[解决办法]
看到这样的接口,然后还传个NULL,那肯定是调用的人有问题嘛
[解决办法]
像CString或者std::string都可以用来做返回值,但是尽量避免用来作为参数,可能存在浅拷贝的问题,所以如果作为传入参数,请使用C风格字符串,微软的MSDN里也是这么建议的。
[解决办法]
杯具!!!这是代码不严谨的问题

读书人网 >C++

热点推荐