gpt4 book ai didi

c++ - 是否可以将对象分配给 int?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:49:31 25 4
gpt4 key购买 nike

我有一个 CCounter 类,它包含受互斥锁保护的整数值。我已经定义了几个运算符,例如 post/pre inc/dec 返回一个整数,所以我可以这样做:

CCounter c(10);
int i = c++;

但是我该如何处理像 i = c 这样的简单赋值呢?我试图定义 friend operator= 但它给了我

operator=(int&, const CCounter&)' 必须是非静态成员函数

错误。请指教。谢谢。

最佳答案

您需要定义一个从 CCounter 转换为 int 的转换运算符。将此成员添加到您的类(class):

operator int() const {
return ...;
}

关于c++ - 是否可以将对象分配给 int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1130440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com