我刚开始用C++编程,我尝试创建两个类,其中一个类包含另一个类。
文件A.h
#ifndef _A_h
#define _A_h
class A{
public:
A(int id);
private:
int _id;
B _b; // HERE I GET A COMPILATION ERROR: B does not name a type
};
#endif
文件A.cpp
#include "A.h"
#include "B.h"
#include <cstdio>
A:
我做了下面的程序,但现在我得到了一个错误。我找错了差不多三个小时,但毫无价值。我想和你们讨论这个问题。我得到了错误:{令牌之前的预期类名。
#ifndef ASKDIALOG_H
#define ASKDIALOG_H
#include <QDialog>
#include "umerwindow.h"
namespace Ui {
class AskDialog;
}
class AskDialog : public QDialog, public UmerWindow // HERE IS THE ERROR
// q.h file
#ifndef __Q_H__
#define __Q_H__
using namespace std;
#include "n.h"
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <string>
class Q
{
public:
Q();
private:
N* beginning; //error N does not name a type
N* end; //
我从来没有真正玩过类,但我希望在我正在处理的页面上使用。
我的主文件是通过include调用5个"root“php文件
include ("php-ews/ExchangeWebServices.php");
include ("php-ews/EWS_Exception.php");
include ("php-ews/EWSType.php");
include ("php-ews/NTLMSoapClient.php");
include ("php-ews/NTLMStream.php");
然而,
在F.B.Brokken( the C++ Annotation的作者)为期半年的C++课程中,我们学到了所谓的实现头部的使用。我知道这是Frank的一个约定,但我在其他地方从来没有见过它。因此,我将解释这个概念,我非常好奇其他人对此有何看法。
其思想是,您只需将类成员的实现(假设您没有编写类内定义)所需的所有#include指令放在一个文件中,即.ih实现头中,然后将该文件#include到每个源文件中。替代方案包括
1) #include类标题中的所有内容,或者
2)在每个源文件中分别#include所有的头文件。
这两种选择的缺点都是显而易见的:
1a)在添加了任何需要一些额外#incl
我试图解决这个问题,但我在理解转发声明时一定存在一些误解。
我收到以下错误:
src/algorithm.cpp: In constructor ‘Algorithm::Algorithm(MainWindow*)’:
src/algorithm.cpp:22:20: error: invalid use of incomplete type ‘struct Ui::MainWindow’
src/mainwindow.h:23:10: error: forward declaration of ‘struct Ui::MainWindow’
我有这些文件(我省略了一些行和文件,只粘贴了相关代
我一直在阅读一些文章,其中将.h中的类删除和.cpp文件中的defenition分开,只有.h文件包含在main.cpp文件中。这里有一篇类似的文章。我试过以下几种方法。
classheader.h文件
#ifndef CLASSHEADER_H
#define CLASSHEADER_H
#include <string>
using namespace std;
class animal{
public:
void set_animal_prop(string a, string b, int c);
void get_animal_prop();
private:
st
我正试图转发声明头文件#include<memory_resource>和#include<deque>。但下面这些似乎不起作用。这是伪代码:
A.hpp
class memory_resource;
class deque;
class A
{
public:
...
private:
std::pmr::deque<index_t> tempQueue;
}
A.cpp
#include<memory_resource>
#include<deque>
...
我正在尝试将ovpn3 3的ovpncli示例转换为从QObject派生的类。我无法将源文件转换为单独的接口(.h)和实现(.cpp)文件。为了使MOC高兴,我将#include "openvpn.moc"放在openvpn.cpp (源文件)的末尾。但是,我得到了这个错误::-1: error: No rule to make target 'openvpn.moc', needed by 'openvpnmanager.o'. Stop.,我已经清理了构建目录,重新运行了qmake,并重新构建了1000次。尽管如此,它仍然不起作用。我做错了
我创建了一个名为TIME的新类,并尝试在另一个.cpp文件中定义一个方法(time_display)。我添加了头文件'time.h‘,其中定义了类TIME。我试图编译这段代码,但在第6行得到了错误消息time display in class TIME does not name a type。 #include <iostream>
#include <chrono>
#include <ctime>
#include <cstdlib>
#include "time.h"
class TIME::time_disp
我已经为一个控制台应用程序编写了一些C++类。
如何在VCL窗体应用程序中使用这些类。我正在使用C++生成器XE2。
我已经通过项目->添加到项目中添加了.h和.cpp文件。我需要写一条include语句吗?如果是这样,我应该在哪里执行此操作?
我尝试将include语句放在.cpp文件的顶部,但得到以下错误: Unable to open include file。
我将.h和.cpp文件放在与Forms项目相同的目录中。
谢谢
我编写了这个头文件(header1.h)
#ifndef HEADER1_H
#define HEADER1_H
class first ;
//int summ(int a , int b) ;
#endif
这个源文件是(header1.cpp and main.cpp)
#include <iostream>
#include "header1.h"
using namespace std;
class first
{
public:
int a,b,c;
int sum(int a , int b);
};
int f
在本教程()之后,我在Visual Studio C++ 2017上遇到了4个错误。其中三个是相同的东西,只是重复“母亲”:基类没有在女儿.h文件中定义。另一个错误是:‘sayName’不是‘code’的成员,代码如下。我希望程序打印的内容非常简单……我希望它打印出两行“你在那里做什么?”如果你能帮我回答这个问题,那就太好了。谢谢。对于主文件`#include "stdafx.h“#include #include"Daughter.h”#include"Mother.h“使用命名空间std;
int main()
{
Mother pot;
pot.s
/Core/Api.php
<?php namespace Core;
class Api
{
//
}
start.php
<?php
include 'vendor/autoload.php'
index.php
<?php
include 'start.php';
use Core\Api as Api;
new Api // it's work
start.php
<?php
include 'vendor/autoload.php'
use Core\Api as Api;
index.p