Redian新闻
>
微信这事肿么了?
avatar
微信这事肿么了?# PDA - 掌中宝
p*4
1
比如我写了一个class
class A
{
public:
void DoThis();
void DoThat();
}
当我使用它的时候,必须要在heap上产生一个instance吗?
int main()
{
A* test1 = new A(); //
A test2;// 这样也能正常工作,请问本质的区别在哪里,什么时候应该用哪个?我
的理解是一个是在heap上,一个是在stack上,如果不太大,就都可以,如果大,就应
该放在heap上。对吗?
}
另外A* test1 = new A(); 应该尽量用c++11,所以尽量写成如下? 可是我看leetcode网
上的很多答案,都用的老的c++ styple.
auto test1 = make_shared();
avatar
t*m
2
无缘无故把我的两个帐号ban掉了。一个帐号是用美国电话号码注册的,另一个是用
Facebook注册的。用SMS企图重新激活然后汇报说帐号已经被close了。有近期遇到类似
状况的XDJM吗?
avatar
w*z
3
这年头,为什么还要学c++?

【在 p********4 的大作中提到】
: 比如我写了一个class
: class A
: {
: public:
: void DoThis();
: void DoThat();
: }
: 当我使用它的时候,必须要在heap上产生一个instance吗?
: int main()
: {

avatar
N*n
4

最近发啥反党、反社会主义言论了?国安局将来请你去喝茶。

【在 t*m 的大作中提到】
: 无缘无故把我的两个帐号ban掉了。一个帐号是用美国电话号码注册的,另一个是用
: Facebook注册的。用SMS企图重新激活然后汇报说帐号已经被close了。有近期遇到类似
: 状况的XDJM吗?

avatar
g*e
5
你理解的对 如果只需在当前函数里用 就直接生成在stack省得忘记删除。如果要在别
的地方用就用heap。

【在 p********4 的大作中提到】
: 比如我写了一个class
: class A
: {
: public:
: void DoThis();
: void DoThat();
: }
: 当我使用它的时候,必须要在heap上产生一个instance吗?
: int main()
: {

avatar
t*m
6
小民向来遵纪守法。

【在 N********n 的大作中提到】
:
: 最近发啥反党、反社会主义言论了?国安局将来请你去喝茶。

avatar
m*i
7
是的,一个在堆上,一个在栈上。一般情况下,随便哪个都可以。用new的时候,注意
要手动delete就行了。
建议用C++11,养成习惯。如果你面试的时候用了new,忘记delete,可能被面试官指出
。直接用make_shared,一上来就闪瞎面试官的32克拉眼,哈哈

【在 p********4 的大作中提到】
: 比如我写了一个class
: class A
: {
: public:
: void DoThis();
: void DoThat();
: }
: 当我使用它的时候,必须要在heap上产生一个instance吗?
: int main()
: {

avatar
x*o
8
我用美国电话号码注册的微信号还在用。

【在 t*m 的大作中提到】
: 无缘无故把我的两个帐号ban掉了。一个帐号是用美国电话号码注册的,另一个是用
: Facebook注册的。用SMS企图重新激活然后汇报说帐号已经被close了。有近期遇到类似
: 状况的XDJM吗?

avatar
t*s
9
为了一辈子当码工

【在 w**z 的大作中提到】
: 这年头,为什么还要学c++?
avatar
h*n
10
这么恐怖?

【在 t*m 的大作中提到】
: 无缘无故把我的两个帐号ban掉了。一个帐号是用美国电话号码注册的,另一个是用
: Facebook注册的。用SMS企图重新激活然后汇报说帐号已经被close了。有近期遇到类似
: 状况的XDJM吗?

avatar
x*9
11
allocate on stack is faster than on heap, and it will take the advantage on
cache optimization
however, instance on stack is only available in current code block.
instance on heap is available everywhere if you get the pointer, but it's
slower and you have to deallocate it when you don't need them
avatar
l*e
12
会不会是被人举报太多次了?
avatar
a*r
13
like xunhuan119 said. instances allocated on heap have a global scope, and
instances allocated on stack have local scope. When the instances are out of
scope, their dtor will clean up the allocated memory. The global scoped
instances will never out of scope.
avatar
x*9
14
@awbeer
Xunhuan19 not 119
:)
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。