作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我要问的是关于成员“mylist”的更好做法:
像这样声明我的列表:
class MyClaz {
std::list<string> mylist;
...
}
或者这样声明:
class MyClaz {
std::list<string> *mylst;
MyClaz();
...
}
MyClaz::MyClaz() {
myList = new std::list<string>();
}
// plus destructor to delete myList
在第一种情况下,mylist 会在创建 MyClaz 实例时自动分配吗?当 MyClaz 被销毁时,它会被正确清理吗?
是否有理由使用第二种情况?看起来更危险。
最佳答案
谨慎使用指针,仅在需要时使用。没有指针有很多优点,包括不必手动管理对象的生命周期和数据局部性。问题应该是是否有任何理由使用第二种情况...
关于c++ - 对于由其他对象组成的 C++ 类,将这些成员对象设为指针是一种好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24498454/
在我生活的世界中,构建一个将所有飞镖都扔到墙上的解决方案,并希望其中一些能命中靶心是一种非常糟糕的解决方案方法。 那么,我的问题出现了,什么时候在约定可接受的生产系统中使用 INSERT IGNORE
在数据处理时,经常会因为index报错而发愁。不要紧,本次来和大家聊聊pandas中处理索引的几种常用方法。 1.读取时指定索引列 很多情况下,我们的数据源是 CSV 文件。假设
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 6 年前。 Improve
我是一名优秀的程序员,十分优秀!