标签:
代码如下:
1 #include <iostream> 2 3 class foo { 4 public: 5 const char * get_key(); 6 void get_data(); 7 const char * get_key_and_data(); 8 9 int offset; 10 int sizes; 11 }; 12 13 const char * foo::get_key() 14 { 15 offset=100; 16 sizes=9; 17 return "hello"; 18 } 19 20 void foo::get_data() 21 { 22 get_key(); 23 } 24 25 const char * foo::get_key_and_data() 26 { 27 return get_key(); 28 } 29 30 int main() 31 { 32 foo f; 33 34 f.offset = 1; 35 f.sizes = 1; 36 37 //A: 38 std::cout << f.get_key() << ": " 39 << f.offset << "\t" 40 << f.sizes << std::endl; 41 42 //B: 43 std::cout << f.get_key() << ": " ; 44 std::cout << f.offset << "\t" ; 45 std::cout << f.sizes << std::endl; 46 47 return true; 48 }
注意A中没有分号,B有分号。看看输出:
hello: 1 1 hello: 100 9
大概就是说没有分号,这个语句还没有完成,也没有改变offset和sizes的值。
标签:
原文地址:http://www.cnblogs.com/qydw000/p/5021750.html