| 天极软件专题专区精选 | ||
| Google专区 | POPO专区 | QQ专区 |
| Flash MX 视频教程 | Photoshop视频教程 | 网页设计视频教程 |
| PowerPoint动画演示教程 | Excel动画教程集 | Word动画演示教程 |
| 特洛伊木马专区 | 黑客知识教程专区 | 注册表应用专区 |
| Windows API开发专区 | 网络编程专区 | VB数据库编程专区 |
| 图像与多媒体编程 | ||
| #include <stdio.h> #include <string.h> class Person { private: char* _name; public: Person() { _name = new char[256]; } void SetName(const char* name) { if(strlen(name) + 1 < 256) strcpy(_name,name); } void PrintName() { printf("%s\n",_name); } }; int main() { // 创建对象的第一个实例并赋于名字为John Person p1; p1.SetName("John"); p1.PrintName(); //通过复制p1引用的对象创建另一个对象 Person p2(p1); p2.SetName("Alice"); p2.PrintName(); //现在再输出p1的名字 p1.PrintName(); scanf("q"); return 0; } |
| class Person { private: char* _name; public: Person() { _name = new char[256]; } // 这是拷贝构造函数。在此我们初始化一个新的数组,为Person的实例所用 Person(Person&) { _name = new char[256]; } void SetName(const char* name) { if(strlen(name) + 1 < 256) strcpy(_name,name); } void PrintName() { printf("%s\n",_name); } }; |