草庐IT

int_member

全部标签

c++ - 用 int main(void) 编译失败; main(int argc, char *argv[]) 成功。为什么?

问题为什么编译具有intmain(void)main函数的程序与编译具有intmain(intargc,char*argv[])主函数,如果程序不使用命令行传递的参数?这个操作系统或编译器是特定的吗?我没有使用mingw和g++得到相同的结果(这很奇怪不是因为wingw是gcc的一个端口)。例子代码#include#include"SDL/SDL.h"intmain(void){return0;}编译命令g++test.cpp;#g++4.4.5i586-mingw32msvc-g++test.cpp;#mingw4.4.4错误(由第二个命令给出。)a(main.o):(.text+0

c++ - 错误 : no '__________' member function declared in class '_______'

我认为自己是一个相当新手的c++程序员,我以前从未遇到过这个错误。我只是想为我的函数创建一个类,但我的头文件中声明的所有std::前缀函数都没有被识别//comments//comments//comments//comments//comments//comments//comments//comments//comments//comments//comments#ifndefPERSON_H#definePERSON_H#includeclassPerson{public:Person();std::stringgetName();//returnfirstnamestd::st

c++ - 使用迭代器将 int 值赋给 vector

我在C++Primer(3.23)中进行了将近2天的小练习。我试过很多方法给vector赋值.我给你一个我工作的实际练习和我到目前为止的代码,但它是完全错误的。我做了很多研究,但没有发现任何有用的东西。编写程序创建一个vector与10int元素。使用迭代器,为每个元素分配一个为其当前值两倍的值。通过打印vector来测试程序这是我的代码intmain(){vectornum(10);for(autoit=num.begin();it!=num.end();++it)//iteratingthrougheachelementinvector{*it=2;//assignvaluetov

C++:int64_t 它来自哪里?

这个问题在这里已经有了答案:Definitionofint64_t(5个答案)关闭9年前。我想知道像int64_t这样的类型是从哪里来的。它们是C++标准的还是操作系统相关的?(1)此外,您知道在哪里可以找到有关这些类型的文档吗?到目前为止我找不到有用的信息。他们有特别的名字吗?(2)它们与int、long等标准原始类型的一般区别是什么...(3)谢谢你和问候

C++ 错误 : reference to non-static member function must be called

我正在尝试创建一个类来抽象libuv网络功能的一些基本行为。#defineTCP_BACKLOG256class_tcp{uv_tcp_t*tcp=NULL;public:~_tcp(){deletetcp;}voidlisten_uv_listen_uv_connection_cb(uv_stream_t*stream,intstatus){printf("NEWCONNECTION\n");}voidlisten(constchar*host,intport){tcp=newuv_tcp_t();uv_tcp_init(uv_default_loop(),tcp);sockaddr

c++ - 为什么int/int = int?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭7年前。Improvethisquestion为什么当我除以两个整数时结果是整数而不是float,为什么选择这个设计决策?

c++ - 将 std::function<int(int)> 赋值给 std::function<const int&(const int& x)>

以下代码编译但在VC++2015(发行版)中产生未定义的输出和运行时错误othercompilers.#include#includeintmain(){std::functionf=[](intx){returnx;};std::functiong=f;std::cout为什么赋值g=f;是允许的? 最佳答案 考虑重写等效代码以避免lambda或std::function:intf(intx){returnx;}intconst&g(intconst&x){returnf(x);}这是一个结构良好的代码,尽管如此,它仍会返回一个对

c++ - 从 Qt 5.6 切换到 Qt 5.7 - 命名空间 std 中的 "no member ' make_unique'

我有一个CMakeQt项目,它使用了多个c++14功能,包括std::make_unique。通常这将通过以下方式处理:LIST(APPENDCMAKE_CXX_FLAGS-std=c++14)或ADD_COMPILE_OPTIONS(-std=c++14)我想将项目从5.6版升级到5.7版,但在测试构建期间出现多次失败并出现错误nomember'make_unique'innamespacestd我已验证所有适当的header和编译选项都已到位,并排除了任何环境问题。使用Qt5.7绝对是个问题。有什么解决方法吗? 最佳答案 原来这

C++11 在 map<key, value> 中为值(int 和 string)存储多种数据类型的最简单方法?

我想要一个使用的map键字符串值的整数或字符串像这样:std::mapmyMap;myMap["first_key"]=10;myMap["second_key"]="stringValue";做这种事情的最简单方法是什么?已添加)我正在寻找适用于C++11的解决方案 最佳答案 在c++17中,你可以使用std::variant,在此之前,您可以使用boost中的那个:usingIntOrString=std::variant;std::mapmyMap;myMap["first_key"]=10;myMap["second_key

c++ - POD 结构(相同类型的成员): are members in contiguous memory locations?

给定templatestructVector3d{Tx,y,z;};假设x、y和z位于连续的内存位置是否安全?对于T=float和T=double至少可以安全地假设吗?如果不能,是否有可能以跨平台的方式实现?注意:只要x、y、z是连续的,我不介意在z之后填充 最佳答案 Isitsafetoassumethatx,y,andzareincontiguousmemorylocations?从技术上讲,语言没有这样的保证。另一方面,它们也没有必要不连续,实际上它们很可能是连续的。Ifnotisitpossibletoenforceinac