腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
6
回答
const_cast
安全
吗
?
c++
、
casting
、
const-cast
我在
const_cast
上找不到太多信息。我能找到的唯一信息(在堆栈溢出上)是:或者,什么时候可以使用
const_cast
浏览 112
提问于2008-12-10
得票数 95
回答已采纳
3
回答
在const方法中
const_cast
'this‘将'this’赋值给外部变量?
c++
为了解决这个问题,可以使用
const_cast
: void func() const {} 这
安全
吗
?在使用
const_cast
时,我非常谨慎,但在这种情况下,在我看来是合法的。
浏览 2
提问于2017-08-23
得票数 2
回答已采纳
1
回答
有可能
吗
?
c++
、
constants
、
c++17
、
virtual-functions
int* get(){ return nullptr; }我想提供一个const版本(请记住,我在遗留代码中大约有50种不同的实现)但是这个想法需要使用
const_cast
-- scott在他的书中提出了这种方法(尽管情况是相反的)--但是它真的
安全<
浏览 0
提问于2019-06-25
得票数 3
回答已采纳
3
回答
Const_cast
(迭代器->second)
安全
吗
?
c++
我想知道这段代码是否
安全
,并且没有任何未定义的行为。Session*> stack; return;
const_cast
浏览 0
提问于2012-05-20
得票数 0
回答已采纳
1
回答
const_cast
可以用来解决这个问题
吗
?
c++
、
set
、
constants
这是“set”和“find”的缺点
吗
?像我这样用
const_cast
解决这个问题
安全
吗
?compare> m; const X*p=&a; std::set<X*,compare>::const_iterator it=m.find(
const_cast
浏览 3
提问于2020-06-19
得票数 4
回答已采纳
1
回答
最初被宣布为经常混淆
c++
、
constants
、
const-cast
只有当您正在转换一个原本是非const的变量时,
const_cast
才是
安全
的。 文字是唯一最初被声明为常量的数据
吗
?如果没有,请给出最初声明的const数据场景的示例
吗
?
浏览 0
提问于2014-06-25
得票数 1
回答已采纳
4
回答
const_cast
比普通石膏更
安全
吗
?
c++
哪种更
安全
?int main() const int i=5; ptr=(int*)&i; <------------------- first ptr=
const_cast
浏览 8
提问于2012-07-27
得票数 3
回答已采纳
6
回答
为char*:
const_cast
<char *> vs使用char数组分配字符串文本
c++
、
string
、
casting
sys_vgui(
const_cast
<char *>("wm deiconify .x%lx\n"), x);sys_vgui(
const_cast
<char *>("focus .x%lx.text\n"), x); 但我不确定这是否真的
安全
,因为我看到许多人说不要直接将字符串文字转换为char因此,我想出了下面的方法,这似
浏览 2
提问于2018-07-10
得票数 1
回答已采纳
5
回答
这是
const_cast
的有效使用
吗
?
c++
、
constants
、
const-cast
但是我不希望返回值也是const,那么使用
const_cast
是否
安全
呢?还是有更好的解决方案? { } };
浏览 0
提问于2015-04-20
得票数 0
回答已采纳
2
回答
指针上的
const_cast
是否是未定义的行为?
c++
在另一个问题中,我遇到了以下代码: Real StatData::mean(Real trim) const // trim, pun not intended // this->i = v; // compile error: this is a pointer to const
const_cast
<type*>(this)->i = v;
浏览 0
提问于2014-08-16
得票数 5
9
回答
C++常量强制转换,不确定这是否
安全
c++
、
const-cast
这似乎是一个愚蠢的问题,但我真的需要澄清这一点:还需要
const_cast
吗
?如果我在适当的地方改变输入指针值,它会
安全
地与std::string一起工作,还是会产生未定义的行为?std::string some_text = "Text with some input"; char * input =
const_cast
<char*>(some_text.c_str());
浏览 0
提问于2012-04-24
得票数 7
回答已采纳
1
回答
为什么execvp的argv参数不是const?
c
、
libc
、
execvp
这就排除了这样的代码被使用:execvp(argv[0], argv); 这是一个意外的遗漏
吗
?在这个问题上使用
const_cast
安全
吗
?或者一些execvp实现真的在那个内存上乱涂乱画
吗
?
浏览 0
提问于2012-05-05
得票数 28
回答已采纳
3
回答
使用libpng - const对象保存图像
c++
、
constants
、
libpng
row_pointers = new png_bytep[m_height]; row_pointers[i] =
const_cast
row_pointers);} 问题是png_set_rows的第三个参数是非常量的,所以如果我希望成员函数GrayscaleImage::SavePNG为const,那么在某些时候我必须使用
const_cast
我在想,这样做
安全
吗
?
浏览 0
提问于2012-07-06
得票数 1
回答已采纳
1
回答
可变关键字和线程
安全
c++
、
oop
、
thread-safety
、
volatile
、
mutable
PersistentMap : public Map { Value get(Key const &key) const}; 随着
const_cast
的数量越来越多,我通过在PersistentMap::db中添加一个mutable说明符(以及提醒自己它的丑陋之处Is 是我第一次尝试使用
const_cast
(我的新方法线程
安全
浏览 2
提问于2011-01-20
得票数 3
回答已采纳
4
回答
const强制转换为允许读锁定,这闻起来是不是很糟糕?
c++
、
concurrency
、
constants
我想在一个标记为const的对象上执行一个只读方法,但是为了以线程方式
安全
地执行这个操作,我需要锁定一个读写互斥锁: ScopedRead_是一个子类),以允许在const对象上使用read_lock,但我必须编写以下代码: pthread_rwlock_rdlock(
const_cast
<pthread_rwlock_t*>(&rwlock_));我一直都知道
const_cast</
浏览 6
提问于2010-01-29
得票数 6
回答已采纳
2
回答
来自std::string的std::istringstream,不复制
c++
、
istringstream
ifstream in("huge_line.txt");getline(in,line);ss.rdbuf()->pubsetbuf(
const_cast
我的问题是,考虑到
const_cast
,这
安全
吗
?
浏览 0
提问于2013-06-02
得票数 4
回答已采纳
2
回答
C++11标准是否通过"auto n2 =
const_cast
<int&>(n);“来保证"n2 is int&”?
c++
、
c++11
、
auto
、
type-systems
、
type-deduction
const int n = 0;auto n2 =
const_cast
<int&>(n); C++11标准通过auto n2 =
const_cast
<int&>(n);保证n2 is int&
吗
?我必须使用auto& n1 =
const_cast
<int&>(n);而不是auto n2 =
const_cast
&l
浏览 3
提问于2016-12-06
得票数 4
回答已采纳
1
回答
为什么"gptr“类型是basic_streambuf char_type*而不是const char_type*?
c++
、
iostream
、
const-correctness
、
streambuf
在这里使用
const_cast
来为这些gptr使用常量字符指针
安全
吗
?
浏览 2
提问于2010-12-06
得票数 4
回答已采纳
2
回答
C++11使用指针修改initializer_list中的元素会导致SIGSEGV,为什么?
c++
、
c++11
、
initializer-list
、
segmentation-fault
、
const-cast
我使用
const_cast
来修改initializer_list中的元素,如下所示:int main() auto a1={1,2,3for(auto& e:a1) int*p=
const_cast
<int*>(&e); } for(auto& e:a2)为什么,我的程序有任何不
安全
的操作?帮帮忙,谢谢。
浏览 1
提问于2016-06-10
得票数 1
回答已采纳
2
回答
Concatenating 2 char*产生奇怪的结果
c++
、
ios
、
objective-c
第一个字符和方法声明以供参考char* metaChar =
const_cast
<char*>(result->getMetaData());virtual const char *getUniqueTargetId() const = 0 char* idChar =
const_cast
浏览 5
提问于2016-11-03
得票数 0
点击加载更多
热门
标签
更多标签
云服务器
ICP备案
对象存储
云点播
即时通信 IM
活动推荐
运营活动
广告
关闭
领券