由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 一个关于assignment constructor和expection的问题
相关主题
operator() overloading 一问菜鸟请教smart pointer
关于c++的constructor的面试题Is the order of initialization a, b, c or c, b, a?
C++问题,confusing...问个overloading new operator的问题
请教各路C++大神 为什么f(3) 输出是 'dd'C++里面
c++问题,请高人指点迷津,c++ faq lite的一个例子为什么在overloading中,friend <<不能读取private值呢?
What is wrong with the code?[合集] 关于template和inheritance的问题请教
c++ std::abs(int) ambiguous?内存泄露了吗?
腆着脸在问一道[合集] C++问题(copy constructor)
相关话题的讨论汇总
话题: mstring话题: const话题: len话题: arr
进入Programming版参与讨论
1 (共1页)
mw
发帖数: 525
1
我当我把substr的返回值改成实际的变量而不是reference,程序就编译不了了。。。。
请问谁知道是怎么回事吗?
为什么at()里面的throw没法工作呢?
#include
#include
using namespace std;
class mstring{
public:
const char* c_str() const{
return _arr;
}
unsigned int c_len() const{
return _len;
}

void print(){
printf("%s\n", _arr);

}
public:
mstring(){
_len = 0;
_arr = 0;
}
mstring(unsigned int ilen){
_len = ilen;
_
t****t
发帖数: 6806
2
change your copy constructor signature to
mstring(const mstring&)

。。

【在 mw 的大作中提到】
: 我当我把substr的返回值改成实际的变量而不是reference,程序就编译不了了。。。。
: 请问谁知道是怎么回事吗?
: 为什么at()里面的throw没法工作呢?
: #include
: #include
: using namespace std;
: class mstring{
: public:
: const char* c_str() const{
: return _arr;

mw
发帖数: 525
3
yah, that's it, thanks a lot!
can you also help to give a clue --- "why?"

【在 t****t 的大作中提到】
: change your copy constructor signature to
: mstring(const mstring&)
:
: 。。

h***z
发帖数: 233
4
The semantics of copying that we expect is that the original is not modified
by the copy action. Requiring copy constructor argument to be a const
reference would make this behavior consistent with what we expect.
k**f
发帖数: 372
5
A side topic from LZ's post, where the data members are named with leading
underscores. I've read elsewhere that this is not a good practice.
What do you guys think?
1 (共1页)
进入Programming版参与讨论
相关主题
[合集] C++问题(copy constructor)c++问题,请高人指点迷津,c++ faq lite的一个例子
[合集] 问个面试题What is wrong with the code?
Why should i include .cpp instead of .hc++ std::abs(int) ambiguous?
问个小问题腆着脸在问一道
operator() overloading 一问菜鸟请教smart pointer
关于c++的constructor的面试题Is the order of initialization a, b, c or c, b, a?
C++问题,confusing...问个overloading new operator的问题
请教各路C++大神 为什么f(3) 输出是 'dd'C++里面
相关话题的讨论汇总
话题: mstring话题: const话题: len话题: arr