关于new的一点笔记

 http://topic.csdn.net/u/20110707/11/f15d411f-00fc-41a2-8834-d45d42929d73.html?35287

必须delete用new创建对象的那个地址。而楼主pA = GetPointA();这样其实已经改变了原来的那个new出来的地址,这时候delete就可能有问题了(如果GetPointA返回的也是同一种类型的指针,且该指针也是被new出来的话,那么delete pA这句话本身也不会出错。否则,就错了)。另外,经过pA = GetPointA();改变pA的指向后,如果事先没有保存前面new出来的那个地址,那么那个地址就成了悬浮指针(daggling pointer),你再也没有办法把它回收啦,这样就会造成内存泄漏。

 

如果CA *pTemp是new出来的,那就不能叫局部变量或者叫临时变量了。如果是new出来的,那么直到delete将它delete掉,它才会失效,否则将一直有效,直到你的程序退出。

在一个函数里面不能返回局部变量的引用或者地址,这样肯定是错误的。。。。


 

 


当我们使用ES6对象拓展时,可以更加简洁和灵活地操作对象。下面是更多关于ES6对象拓展的笔记和代码示例: 1. 合并对象和覆盖属性: ES6对象拓展允许我们合并多个对象并覆盖属性。这对于创建新的对象或更新现有对象非常有用。 ```javascript const person = { name: "John", age: 30 }; const additionalInfo = { city: "New York", profession: "Developer" }; const mergedPerson = { ...person, ...additionalInfo }; console.log(mergedPerson); // 输出:{ name: "John", age: 30, city: "New York", profession: "Developer" } ``` 2. 动态设置属性: ES6对象拓展使我们能够动态设置属性,这对于根据不同情况设置对象的属性非常有用。 ```javascript const propName = "name"; const propValue = "John"; const person = { [propName]: propValue }; console.log(person); // 输出:{ name: "John" } ``` 3. 对象方法的简写: ES6对象拓展还允许我们以更简洁的方式定义对象方法。 ```javascript const person = { name: "John", age: 30, sayHello() { console.log(`Hello, my name is ${this.name} and I'm ${this.age} years old.`); } }; person.sayHello(); // 输出:Hello, my name is John and I'm 30 years old. ``` 4. 克隆对象: ES6对象拓展提供了一种简单的方式来克隆一个对象。 ```javascript const person = { name: "John", age: 30 }; const clonedPerson = { ...person }; console.log(clonedPerson); // 输出:{ name: "John", age: 30 } ``` 5. 合并数组到对象属性: ES6对象拓展允许我们将数组合并到对象的属性中。 ```javascript const hobbies = ["reading", "painting", "coding"]; const person = { name: "John", age: 30, hobbies: [...hobbies] }; console.log(person); // 输出:{ name: "John", age: 30, hobbies: ["reading", "painting", "coding"] } ``` 这些是关于ES6对象拓展的更多笔记和代码示例。ES6对象拓展提供了一种简洁、灵活和有用的方式来操作和创建对象。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值