C++快速上手
一、C++ 文件结构
每个 C++程序通常分为两个文件.
(1)头文件:一个文件用于保存程序的声明, 称为头文件. C++程序的头文件以 “.h” 为后缀.头文件的作用,通过头文件来调用库功能, 在很多场合, 源代码不便 (或不准) 向用户公布, 只要向用户提供头文件和二进制的库 (lib 静态库) 即可, 用户只需要按照头文件中的接口声明来调用库功能, 而不必关心接口怎么实现的, 编译器会从库中提取相应的代码.如果一个软件的头文件数目比较多 (如超过十个), 通常应将头文件和定义文件分别保存于不同的目录, 以便于维护.例如: 可将头文件保存于include目录, 将定义文件保存于source目录 (可以是多级目录).
头文件由三部分内容组成:
版权和版本声明
预处理块
函数和类结构声明等
假设头文件名称为 pch.h, 头文件的结构参见以下示例
// 入门提示:
// 1. 使用解决方案资源管理器窗口添加/管理文件
// 2. 使用团队资源管理器窗口连接到源代码管理
// 3. 使用输出窗口查看生成输出和其他消息
// 4. 使用错误列表窗口查看错误
// 5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目
// 6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件
#ifndef PCH_H
#define PCH_H
// TODO: 添加要在此处预编译的标头
#endif //PCH_H
(2)定义文件:另一个文件用于保存程序的实现 , 称为定义文件。通常以 “.cpp” 为后缀 (也有一些系统以 “.cc” 或 “.cxx” 为后缀).
定义文件有三部分内容:
定义文件开头处的版权和版本声明
对一些头文件的引用
程序的实现体 (包括数据和代码)
假设定义文件的名称为 test.cpp
// test.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include "pch.h"
#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2\imgproc\types_c.h>
#include <opencv2/highgui/highgui_c.h>
#pragma comment(lib, "opencv_world450d.lib")
using namespace cv;
using namespace std;
int main()
{
//打开摄像头
VideoCapture capture(0, CAP_DSHOW);
if (!capture.isOpened())
{
puts("open failed");
return -1;
}
Mat frame;
while (capture.read(frame))
{
imshow("video-demo", frame);
if (waitKey(30) >= 0)//延时30ms,按下任何键退出
break;
}
return 0;
}