【发布时间】:2013-12-20 23:11:52
【问题描述】:
这很尴尬,我知道这会表现为缺乏研究工作。
我是一名非常熟练的 C# 程序员,在该领域拥有丰富的经验,但我想学习 C++,因为它在(例如)DirectX 中开辟了一些非常有趣的机会。很长一段时间我都使用 SharpDX 来模拟相同的,但现在我想学习真正的交易。
所以我决定用 C++ 创建一个 Windows Store DLL 库。乍一看,C++ 似乎有很大的不同,但经过一番研究,我了解了 .h 和 .cpp 文件的结构。现在对我来说似乎更易于管理。
但是,我在引用方面遇到了问题。
我想让一个类继承自 Control(在 XAML 中)。我想我必须导入正确的库,并且在 C++ 中引用系统库必须通过代码文件本身来完成(可能是因为链接过程?)。
Graph.h
#pragma once
#include <wrl.h>
#include <windows.foundation.h>
#include <windows.foundation.collections.h>
#include <windows.ui.h>
#include <windows.ui.xaml.h>
#include <windows.ui.xaml.controls.h>
#include "pch.h"
namespace Techmatic_FunctionGraph
{
public ref class Graph sealed : public Windows::UI::Xaml::Controls::Control
{
public:
Graph();
}
}
Graph.cpp
#include "pch.h"
#include "Graph.h"
#include <windows.foundation.h>
#include <windows.foundation.collections.h>
#include <windows.ui.h>
#include <windows.ui.xaml.h>
#include <windows.ui.xaml.controls.h>
using namespace Techmatic_FunctionGraph;
using namespace Windows::Foundation;
using namespace Windows::Foundation::Collections;
using namespace Windows::UI::Xaml;
using namespace Windows::UI::Xaml::Controls;
using namespace Windows::UI::Xaml::Data;
using namespace Windows::UI::Xaml::Documents;
using namespace Windows::UI::Xaml::Input;
using namespace Windows::UI::Xaml::Interop;
using namespace Windows::UI::Xaml::Media;
using namespace Windows::UI::Xaml::Media::Imaging;
using namespace Microsoft::WRL;
Techmatic_FunctionGraph::Graph()
{
}
但是,我收到一条错误消息,指出 using namespace Windows::Foundation::Collections; 不是正确的命名空间或类名。
如您所见,我几乎只是在失明中摸索。我试过谷歌搜索“C++ 参考 Windows::Foundation::Collections”和其他查询,但没有运气。
谁能帮助我了解我在这里缺少什么以继续前进,或引导我朝着正确的方向前进?
【问题讨论】:
-
您是否正在使用 C++/CX 创建 Windows 应用商店应用程序?您可能不需要
#include.h 文件。 -
是的,我是。现在情况变得更糟,错误更多。
-
你能分享你的项目吗?
标签: c# c++ windows-runtime