今天我学习了一些C++基础知识并开始了解wchar_t
.我无法弄清楚,为什么我们实际上需要这种数据类型,我该如何使用它?
我在一个块中使用一个信号和插槽连接.我的代码如下
在a.cpp
{
QObject::connect(m_ptheFlange2Details,SIGNAL(GetFlang1DimAfterAnalysis()),
this,SLOT(GetFlang1DimAftrAnalysis()));
m_ptheFlange2Details->get();// one function inside which i am emiting
// GetFlang1DimAfterAnalysis() signal ;
QObject::disconnect(m_ptheFlange2Details,SIGNAL(GetFlang1DimAfterAnalysis()),
this,SLOT(GetFlang1DimAftrAnalysis()));
}
Run Code Online (Sandbox Code Playgroud)
当执行此emit语句时,在get()函数内部,多次调用该槽.根据我的说法,它应该只召唤一次.
namespace CounterNameSpace {
int upperbound;
int lowerbound;
using namespace NS;//Error
}
namespace NS {
int i;
}
// ...
namespace NS {
int j;
}
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,它显示了一个错误.错误C2871:'NS':具有此名称的命名空间不存在我知道如果我在解决反向空间问题之前定义NS.但只是想知道在c ++中是否存在任何类似命名空间的前向声明的东西.因此,在没有在counternamespace之前定义NS的情况下,上述问题将得到解决.请帮忙 .
我一直在寻找到它使用两种功能的Visual Studio的C++ Windows应用程序项目SetWindowExt (...)
和SetViewportExt (...)
.我对这两个函数的作用以及为什么它们是必要的而感到困惑.搜索这些函数,我得出了逻辑坐标和设备坐标的概念.
任何人都可以解释这两个概念的重要性吗?
我有一个xml文件,其中输出没有格式化.这意味着所有输出都在一行中,但我想逐个标记地打破它.
例如 -
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><Analyser> <JointDetails> <Details><StdThickness> T </StdThickness><Thickness_num> 0.032 </Thickness_num></Details> </JointDetails></Analyser>
Run Code Online (Sandbox Code Playgroud)
但我想这样做::
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<Analyser>
<JointDetails>
<Details>
<StdThickness> T </StdThickness>
<Thickness_num> 0.032 </Thickness_num>
</Details>
</JointDetails>
</Analyser>
Run Code Online (Sandbox Code Playgroud)
请不要建议在写入XML文件时这样做,因为这个xml文件已经存在,但现在我必须按上面提到的格式化它.
提前致谢 .
我有一个头文件啊,里面我已经声明了一个结构.该结构的名称是file
.里面file
我有3个成员:a,b,c.在a.cpp中,我实现了该结构并为该结构变量分配了一些值.
现在我有另一个文件bh里面我有结构的前向声明file
.在此之前,如果我编译它没有显示错误但是当我要通过该b.cpp类访问该结构中存在的变量时,它将给出类似"undefined struct"的错误.
我究竟做错了什么?
我想编译一个时间错误检查,如下所述。但我不知道如何在里面使用它main()
?
#define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); }))
#define BUILD_BUG_ON_NULL(e) ((void *)sizeof(struct { int:-!!(e); }))
int main(){
BUILD_BUG_ON_NULL(12);
}
Run Code Online (Sandbox Code Playgroud)
下面是提到的错误
1--error C2332: 'struct' : missing tag name
2--error C2143: syntax error : missing ')' before '{'
3--error C2027: use of undefined type 'main::<unnamed-tag>'
4--error C2143: syntax error : missing ';' before '{'
5--error C2059: syntax error : ')'
Run Code Online (Sandbox Code Playgroud)
谁能让我知道我做错了什么?
在Friend.h中
#ifndef FRIEND
#define FRIEND
class Friend
{
public:
static int i ;
int j;
Friend(void);
~Friend(void);
}frnd1;
#endif
Run Code Online (Sandbox Code Playgroud)
在Friend.cpp
#include "Friend.h"
int Friend::i = 9;
extern Friend frnd1;
Friend::Friend(void)
{
}
Friend::~Friend(void)
{
}
Run Code Online (Sandbox Code Playgroud)
在main.cpp中
#include <iostream>
using namespace std;
#include"Friend.h"
int main()
{
frnd1.j = 9;
cout<<"hello";
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我运行上面的代码时,它给出了以下链接器错误:
error LNK2005: "class Friend frnd1" (?frnd1@@3VFriend@@A) already defined in main.obj
Run Code Online (Sandbox Code Playgroud)
我无法理解如何在main函数中使用全局对象.
当我们使用final关键字时,变量已经被声明为常量,那么使用static的必要性是什么?我在我们使用的大多数地方都看到过
public static final int nVar = 12
对于常量数据成员。
c++ ×8
qt ×3
qt4 ×2
c ×1
constants ×1
coordinates ×1
gdi ×1
java ×1
macros ×1
mfc ×1
namespaces ×1
visual-c++ ×1
xml ×1