1.项目目录结构
2.文件内容
swap.h
#pragma once
#include <iostream>
class swap{
public:
swap(int a,int b)
{
this->_a = a;
this->_b = b;
}
void run();
void printInfo();
private:
int _a;
int _b;
};
swap.cpp
#include "swap.h"
void swap::run()
{
int temp;
temp = _a;
_a = _b;
_b = temp;
}
void swap::printInfo()
{
std::cout<<"_a="<<_a<<std::endl;
std::cout<<"_b="<<_b<<std::endl;
}
main.cpp
#include "swap.h"
int main(int argc,char **argv)
{
swap swap(10,20);
swap.printInfo();
swap.run();
swap.printInfo();
return 0;
}
CMakeLists.txt
cmake_minimum_required(VERSION 2.8.3)
PROJECT (SWAP)
include_directories(include)
ADD_SUBDIRECTORY(src bin)
./src/CMakeLists.txt
ADD_EXECUTABLE(swap main.cpp swap.cpp)
3.外部构建
## 外部构建
# 1. 在当前目录下,创建build文件夹
$ mkdir build
# 2. 进入到build文件夹
$ cd build
# 3. 编译上级目录的CMakeLists.txt,生成Makefile和其他文件
$ cmake ..
# 4. 执行make命令,生成target
$ make