关于bitset的初始化?

youou008 2011-11-23 10:23:18

#include<iostream>
#include<bitset>

void main()
{
unsigned long ul1 = 0xffffffff;
int a = ul1;
std::bitset<32> bit1(0xffffffff); -----错误?
std::bitset<32> bit1(0xfffffff); -----正确
std::bitset<32> bit1(ul1); -----错误?
std::bitset<32> bit1(a); ------正确
std::cout << bit1 << std::endl;
system("pause");
}
...全文
315 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
superqing 2011-11-24
  • 打赏
  • 举报
回复
0xffffffff要转化为int型才可以, 转换后为-1
机智的呆呆 2011-11-24
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 qq120848369 的回复:]
bitset不是标准,不建议用。
[/Quote]
是c++03标准。
qq120848369 2011-11-24
  • 打赏
  • 举报
回复
bitset不是标准,不建议用。
youou008 2011-11-24
  • 打赏
  • 举报
回复
谢谢大家的回答,抱歉来晚了。

我的编译器是VS2010

看来真是编译器的问题。

do__i 2011-11-24
  • 打赏
  • 举报
回复
  1 #include<iostream>
2 #include<bitset>
3 #include<cstddef>
4 using namespace std;
5 //标准库提供的bitset类简化了位集的操作
6
7 int main()
8 {
9 unsigned long ulval=0xffffffff;
10 bitset<32> bitvec(ulval);
11 size_t sz1=bitvec.size();
12 size_t sz2=bitvec.count();
13 cout<<bitvec<<endl
14 <<"sz1="<<sz1<<endl
15 <<"sz2="<<sz2<<endl;
16
17 return 0;
18 }
~
~
~
~
~
"j.cc" 18L, 337C 1,1 全部

zhaobin@debian:~$ vim j.cc
zhaobin@debian:~$ g++ -o j j.cc
zhaobin@debian:~$ ./j
11111111111111111111111111111111
sz1=32
sz2=32

可能是你的编译器的问题吧。
iamnobody 2011-11-23
  • 打赏
  • 举报
回复

std::bitset<32> bit1(0xffffffffULL);//因为这个值可能被解释为-1(int)或者0xffffffffUL(unsigned long);
std::bitset<32> bit1(-1); //最好这样写,被确定为有int类型。
std::bitset<32> bit1(a); //因为只是重载了两个类型,int , unsigned long long .所以其他类型可能会有矛盾,不知道应该调用哪个。

与编译器自带的stl的实现有关,不用纠结的。我的vs2010也是这样。
turing-complete 2011-11-23
  • 打赏
  • 举报
回复
你是在说位数问题嘛?
pengzhixi 2011-11-23
  • 打赏
  • 举报
回复
是你编译器问题了
恨天低 2011-11-23
  • 打赏
  • 举报
回复
报什么错?
柯本 2011-11-23
  • 打赏
  • 举报
回复
都没问题啊
内容概要:本文围绕“光伏-储能-数据中心”系统的容量优化配置展开研究,旨在通过构建数学模型并结合Matlab编程实现,对园区内光伏发电、储能设备与数据中心算力负荷之间的多能互补关系进行协同优化。研究综合考虑可再生能源出力的波动性、储能系统的充放电特性以及数据中心的动态用电需求与算力调度特性,建立以最小化综合成本、降低碳排放强度、提升能源自给率等为目标的多目标优化模型,并采用先进的智能优化算法(如粒子群、灰狼、鲸鱼等)进行求解,从而确定光伏装机容量与储能系统配置的最优方案。文中提供了完整的Matlab代码实现流程,涵盖数据预处理、模型构建、算法求解与结果可视化全过程,属于综合能源系统与信息基础设施深度融合的前沿交叉课题。; 适合人群:具备电力系统、能源工程、自动化或计算机等相关专业背景,熟悉Matlab编程与基本优化算法原理,从事新能源利用、绿色数据中心、综合能源系统规划与低碳调度等方向的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握光伏-储能-数据中心耦合系统的建模思路与多能流协同机制;② 学习基于Matlab的多目标容量优化配置方法与智能算法应用技巧;③ 为工业园区、数字经济园区及绿色数据中心的能源系统规划、节能减排与可持续运行提供科学决策依据和技术解决方案。; 阅读建议:建议结合所提供的Matlab代码,深入理解目标函数设计、约束条件设定及算法实现细节,可通过调整负荷参数、改变气候数据、引入新的优化目标或约束条件等方式进行拓展性实验,以深化对系统特性的认知并提升实际科研与工程应用能力。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧